删除项目下.git文件夹后从远程仓库更新代码或提交本地代码到远程仓库的方法

作为一个都git不了解的人,会经常弄错分支,或者遇到冲突无法更新或提交代码。这时有的人就会删除项目下.git文件夹,但是删除后发现不能更新代码也不能提交代码了,下面就是解决方法(以Idea为例)。

1、选择项目,创建git本地仓库,依次选择 vcs --> import into Version Control --> Create Git Repository。
删除项目下.git文件夹后从远程仓库更新代码或提交本地代码到远程仓库的方法
2、项目上右键,选择 Git --> Add
删除项目下.git文件夹后从远程仓库更新代码或提交本地代码到远程仓库的方法
3、项目上右键,选择 Git --> Commit Directory
4、项目上右键,选择 Git --> Ropository -->Push
删除项目下.git文件夹后从远程仓库更新代码或提交本地代码到远程仓库的方法
5、push界面会显示Define remote,意思是要配置远程仓库,点击红框位置选择远程仓库
删除项目下.git文件夹后从远程仓库更新代码或提交本地代码到远程仓库的方法
6、将远程仓库项目url粘贴过来
删除项目下.git文件夹后从远程仓库更新代码或提交本地代码到远程仓库的方法
7、这时使用pull更新代码会提示提交失败信息

Git Pull Failed: refusing to merge unrelated histories

这是因为两个仓库有不同的开始点,也就是两个仓库没有共同的 commit 出现,git 会认为这两个仓库可能不是同一个,为防止错误提交,给了这样的提示。
这时需要根据两种情况区分对待:
情形一:本地仓库代码和远程仓库代码一致,无任何改动,执行以下命令

git pull -f origin master --allow-unrelated-histories

–allow-unrelated-histories表示允许不相关历史合并

情形二:本地仓库代码和远程仓库代码不一致,有更新或回退,这时如果按照情形一处理的话会提示以下信息。
删除项目下.git文件夹后从远程仓库更新代码或提交本地代码到远程仓库的方法
这时你可以用远程仓库的代码替换本地代码,然后再提交本地的改动,这样比较麻烦,而且大家都会,就没必要说了。