GIT 失败,请问各位怎样解决

如题所述

1、进入服务器,打开找到相应的git仓库,并进到.git这个文件夹内,可以看到如下图所示的所有文件。

2、我们需要修改.git/config文件,打开这个文件,内容如下图所示。

3、在文件末尾添加如下内容,系统默认是否定的,加了这句话才会忽略:

[receive]       denyCurrentBranch = ignore

4、最后你可以到服务器的Linux下 运行 $ git reset --hard

5、以上修改完成后,再来clone仓库到本地,操作如下图所示。

6、在弹出的clone框中,输入正确的URL后点“OK”开始clone仓库。

7、出现success信息就表示下载完成了。这样,不能clone的问题就解决了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-02-22
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了本回答被网友采纳