解決git pull報錯的方法
阿新 • • 發佈:2018-12-27
2個 password sam branch 報錯 sta posit error: cal
第1個問題: 解決GIT代碼倉庫不同步
今天在執行git pull時出現:
- [root@gitserver /data/work/www/rest/lib/Business/Inventory]# git pull
- Enter passphrase for key ‘/root/.ssh/id_rsa‘:
- Updating 70e8b93..a0f1a6c
- error: Your local changes to the following files would be overwritten by merge:
- rest/lib/Business/Inventory/ProductStatus.php
- Please, commit your changes or stash them before you can merge.
- Aborting
解決方法:
執行git checkout -f,然後再執行git pull重新checkout
- [root@gitserver /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@gitserver /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 [email protected]:rest.git
- git config branch.master.remote origin
- git config branch.master.merge refs/heads/master
解決git pull報錯的方法