第1个问题: 解决Git代码仓库不同步git pull时出现:[root@linuxso.com /data/work/www/rest/lib/Business/Inventory]# git pull
解决方法: 执行git checkout -f,然后再执行git pull重新checkout
-
[root@linuxso.com /data/work/www/rest/lib/Business/Inventory]# git checkout -f
- Your branch is behind ‘origin/master’ by 2 commits, and can be fast-forwarded.
再执行git pull时就可以了:
-
[root@linuxso.com /data/work/www/rest/lib/Business/Inventory]# git pull
- Enter passphrase for key ‘/root/.ssh/id_rsa’:
- Updating 70e8b93..a0f1a6c
- Fast-forward
- rest/lib/Business/Inventory/ProductStatus.php | 1 +
- 1 files changed, 1 insertions(+), 0 deletions(-)
- mode change 100644 => 100755 rest/lib/Business/Inventory/ProductStatus.php
第2个问题: git pull的默认地址问题.
1.git处于master这个branch下时,默认的remote就是origin; 2.当在master这个brach下使用指定remote和merge的git pull时,使用默认的remote和merge。 但是对于自己建的项目,并用push到远程服务器上,并没有这块内容,需要自己配置。 如果直接运行git pull,会得到如此结果:
#当执行git pull之后的提示:
-
$ git pull
- Password:
- You asked me to pull without telling me which branch you
- want to merge with, and ‘branch.master.merge’ in
- your configuration file does not tell me, either. Please
- specify which branch you want to use on the command line and
- try again (e.g. ‘git pull <repository> <refspec>’).
- See git-pull(1) for details.
- If you often merge with the same branch, you may want to
- use something like the following in your configuration file:
- [branch “master”]
- remote = <nickname>
- merge = <remote-ref>
- [remote “<nickname>”]
- url = <url>
- fetch = <refspec>
- See git-config(1) for details.
#解决方法, 通过git config进行如下配置.
-
git remote add -f origin git@192.168.21.44:rest.git
- git config branch.master.remote origin
- git config branch.master.merge refs/heads/master
http://www.linuxso.com/linuxrumen/13158.html