fatal: You are not currently on a branch. 問題解決


fatal: You are not currently on a branch. 解決

注:親試,這種方法會把本地的修改給沖掉,所以事先一定要備份下文檔,之后覆蓋,重新上傳或pull即可;
解決方法:

首先git checkout -b temp

其次git checkout master

即可恢復到master repository的狀態,然后就可以了。

 

1. 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就沒有問題了

 

2.You are not currently on a branch.

症狀:有一次pull的時候又出現沖突,這回用“git reset --hard FETCH_HEAD”方法都不行了,出現:

$ 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了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM