<git 管理代码>的使用方法

首先:搭建了git平台,那就有一个属于你们自己的网址 比如:http://101.***.***.***:8088,(打开会进入一个登录页面的)


如下图:









扫描二维码关注公众号,回复: 3168912 查看本文章



这时候 需要 添加 SSH key

《点击上面图片 上的  add an SSH key 》,会进入到一个页面,此页面是 添加SSH key 的说明,不过是英文的,自己可以去百度翻译下,中文的可以自己去看其他的博客

比如参考博客:http://blog.163.com/www_iloveyou_com/blog/static/2116583722013111113954760/

administrator:~ administrator$ cd ~/.ssh

-bash: cd: /Users/administrator/.ssh: No such file or directory

administrator:~ administrator$ config  id_rsa  id_rsa.pub  known_hosts

-bash: config: command not found

administrator:~ administrator$ ssh-keygen -t rsa -C "添加自己的邮箱"

Generating public/private rsa key pair.

Enter file in which to save the key (/Users/administrator/.ssh/id_rsa): 

Created directory '/Users/administrator/.ssh'.

Enter passphrase (empty for no passphrase): 

Enter same passphrase again: 

Your identification has been saved in /Users/administrator/.ssh/id_rsa.

Your public key has been saved in /Users/administrator/.ssh/id_rsa.pub.

The key fingerprint is:

SHA256:IdZ/tJj2Sf/vVcEaABT268Clacr58pxEx0oQs+Fn6CU 1208535097@q q.com

The key's randomart image is:

+---[RSA 2048]----+

|       +.=o.     |

|      ..B . . .  |

|      oEo+ o.. o |

|     ...Bo=+..o .|

|       .SO=++.  .|

|      . *.=+ o  .|

|       + o .o . .|

|       .+ .    ..|

|        o=     .=|

+----[SHA256]-----+

administrator:~ administrator$ pbcopy < ~/.ssh/id_rsa.pub

administrator:~ administrator$ git add .

fatal: Not a git repository (or any of the parent directories): .git

administrator:~ administrator$ git config --global user.name "mjq"

administrator:~ administrator$ 



最后得到了两个文件:id_rsa和id_rsa.pub:在此目录下,自己可以搜到到,下面会用到的哦

Your identification has been saved in /Users/administrator/.ssh/id_rsa.

Your public key has been saved in /Users/administrator/.ssh/id_rsa.pub.


然后自己去上面图片显示的页面 去 添加 SSH key






保存以后,再次刷新 第二个页面时,没有出现 

you won't be able to push project code via SSH until you add an SSH key to you profilesh 

说明ssh key 已经添加好了(当然,有些git 不添加也可以去使用,当你的git 服务器没有使用SSH ,使用的是http时候,就不需要配置ssh)



-------------------------------------------------------

上面的事情就可以告一段落了,如果这样就认为这是一个和谐社会,那你就想多了

不是说好的 git 管理代码的使用说明,好像什么都没有说呀


哈哈哈......


我们继续


前提: 把项目里面 自带的git 文件删除,如果不删除,输入命令git init 时,会显示Reinitialized existing Git repository in.. ..

再输入 git status 时,On branch master

nothing to commit, working directory clean(翻译:无提交,工作目录清洁)


当你把项目修改过,执行第一步中的  cd /Users/administrator/Desktop/BYM3.4 

 、第二步git status ,后此时会出现

On branch master

Changes to be committed:

  (use "git reset HEAD <file>..." to unstage)


modified:   asd.xcodeproj/project.pbxproj

new file:   asd/dd.h

new file:   asd/dd.m(这些文件是你修改的文件,不用管它)


执行第三步就好,然后,继续执行就可以了


第一步:

administrator:~ administrator$ cd /Users/administrator/Desktop/BYM3.4 

administrator:BYM3.4 administrator$ git init

Initialized empty Git repository in /Users/administrator/Desktop/BYM3.4/.git/


第二步:

administrator:BYM3.4 administrator$git status

On branch master


Initial commit


Untracked files:

  (use "git add <file>..." to include in what will be committed)


WGZY.xcodeproj/

WGZY/

WGZYTests/


nothing added to commit but untracked files present (use "git add" to track)


第三步:

administrator:BYM3.4 administrator$ git add .


第四步:

administrator:BYM3.4 administrator$git commit -m "first commit"

[master (root-commit) c016112] first commit

 1737 files changed, 111203 insertions(+)

 create mode 100755 WGZY.xcodeproj/project.pbxproj

 create mode 100755 WGZY.xcodeproj/project.xcworkspace/contents.xcworkspacedata

 create mode 100755 WGZY.xcodeproj/project.xcworkspace/xcshareddata/WGZY.xccheckout


….(省略很多)


 create mode 100755 WGZYTests/Info.plist

 create mode 100755 WGZYTests/WGZYTests.m


第五步:

administrator:BYM3.4 administrator$ git remote add origin http://git.baiyimao.com/baiyimaoDevolep/iOS.git


第六步:

administrator:BYM3.4 administrator$ git push origin master

Counting objects: 1873, done.

Delta compression using up to 4 threads.

Compressing objects: 100% (1858/1858), done.

Writing objects: 100% (1873/1873), 92.43 MiB | 411.00 KiB/s, done.

Total 1873 (delta 312), reused 0 (delta 0)

To http://git.baiyimao.com/baiyimaoDevolep/iOS.git

 * [new branch]      master -> master

administrator:BYM3.4 administrator$   


上述是比较顺利的 中间没有什么插曲,但是,时间如果有这么多的一番风顺,那么博客就不用写着么多了,

 



下面我将介绍一下 常见的问题:


问题一



输入如下命令时:

administrator:BYM3.4 administrator$git push origin master


错误:

To http://git.baiyimao.com/baiyimaoDevolep/WGZY.git

 ! [rejected]        master -> master (fetch first)

error: failed to push some refs to 'http://git.baiyimao.com/baiyimaoDevolep/WGZY.git'

hint: Updates were rejected because the remote contains work that you do

hint: not have locally. This is usually caused by another repository pushing

hint: to the same ref. You may want to first integrate the remote changes

hint: (e.g., 'git pull ...') before pushing again.

hint: See the 'Note about fast-forwards' in 'git push --help' for details.


解决方案:


在使用git 对源代码进行push到gitHub时可能会出错,信息如下



  此时很多人会尝试下面的命令把当前分支代码上传到master分支上

$ git push -u origin master

  但依然没能解决问题


  出现错误的主要原因是github中的README.md文件不在本地代码目录中


  可以通过如下命令进行代码合并【注:pull=fetch+merge]

  git pull --rebase origin master


  执行上面代码后可以看到本地代码库中多了README.md文件



问题二

输入如下命令时:

administrator:GitTestAAA administrator$ git remote add origin git@iZ23bbkx4wiZ:baiyimaoDevolep/WGZY.git


错误如下:

fatal: remote origin already exists.


解决方案:


   1、先輸入$ git remote rm origin

    2、再輸入$ git remote add origin [email protected]:djqiang/gitdemo.git 就不會報錯了!(根据自己的服务器的地址来)

    3、如果輸入$ git remote rm origin 還是報錯的話,error: Could not
remove config section 'remote.origin'. 我們需要修改gitconfig文件的內容

    4、找到你的github的安裝路徑,我的是C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\etc

    5、找到一個名為gitconfig的文件,打開它把裡面的

[remote "origin"]那一行

刪掉就好了!


问题三

输入命令如下:

administrator:GitTestAAA administrator$git init


错误:

Reinitialized existing Git repository in /Users/administrator/Desktop/GitTestAAA/.git/


解决方案: 在前面已经说了


问题四:

输入命令如下:(clone 项目代码)

git clone http://git.baiyimao.com/Test/iOS.git

错误:

Username for 'http://git.baiyimao.com': [email protected]
Password for 'http://[email protected]@git.baiyimao.com': 
remote: HTTP Basic: Access denied
fatal: Authentication failed for
'http://git.baiyimao.com/test/iOS.git/'
fatal: not in a git directory


解决方案:原因是 没有 初始化git,输入命令行即可 git init ,然后再去clone 项目(把项目clone到一个指定的文件里面 做法是

 cd /Users/administrator/Desktop/testProject01 

其他问题


在 Mac 文件的文件名前添加 . 即可使文件隐藏

也可以在终端里面能用命令来控制


显示Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles YES

隐藏Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles NO


命令运行后需要按 Command Option Esc 选中 Finder 然后点一下 重新开启 就 Ok 了



注:


但别人把项目  clone 下来以后,然后与 remote origin (远程仓库)重新连接,这样就可进行多人管理代码了:git remote add origin git@iZ23bbkx4wiZ:baiyimaoDevolep/WGZY.git


参考博客:


http://www.cocoachina.com/ios/20140524/8536.html


http://blog.csdn.net/csucfl/article/details/50403425






猜你喜欢

转载自blog.csdn.net/jq2530469200/article/details/53173420