1. 程式人生 > >Git常見問題解決辦法

Git常見問題解決辦法

tail -h repo rop app image 合並操作 please master

Q:fatal: not a git repository (or any of the parent directories): .git
K:產生原因:一般是沒有初始化git本地版本管理倉庫,
所以無法執行git命令
解決方法:操作之前執行以下命令行: git init 然後執行一下git status查看狀態信息,即可;

二、git獲取遠程代碼,讓遠程代碼直接覆蓋本地代碼

git fetch --all //只是下載代碼到本地,不進行合並操作
git reset --hard origin/master //把HEAD指向最新下載的版本

三、

技術分享圖片

Pull is not possible because you have unmerged files.

問題:pull的時候

$ git pull

Pull is not possible because you have unmerged files.
Please, fix them up in the work tree, and then use ‘git add/rm <file>‘
as appropriate to mark resolution, or use ‘git commit -a‘

應是local文件沖突了

解決方法:

1.pull會使用git merge導致沖突,需要將沖突的文件resolve掉 git add -u, git commit之後才能成功pull.

2.如果想放棄本地的文件修改,可以使用git reset --hard FETCH_HEAD,FETCH_HEAD表示上一次成功git pull之後形成的commit點。然後git pull.
註意:

git merge會形成MERGE-HEAD(FETCH-HEAD) 。git push會形成HEAD這樣的引用。HEAD代表本地最近成功push後形成的引用。

有時候會莫名其妙地出現這狀況,且Untracked files 還特別多(實際上自己可能只改了個別文件),只好先保存好自己確定做出的local的修改,用git reset --hard FETCH_HEAD回到上次成功pull之後的點,然後再pull就沒有問題了

四、You are not currently on a branch.

問題:pull的時候又出現沖突 ,出現:

$ git pull You are not currently on a branch, so I cannot use any
‘branch.<branchname>.merge‘ in your configuration file.
Please specify which remote branch you want to use on the command
line and try again (e.g. ‘git pull <repository> <refspec>‘).
See git-pull(1) for details.
解決方法:

首先git checkout -b temp

其次git checkout master

即可恢復到master repository的狀態,然後就可以pull了

Git常見問題解決辦法