如果我的
.git
文件夹出现问题,我无法解决,但我想保留当前工作文件夹不变,那么如何从远程仓库“重置”我的 .git
文件夹?.git
文件夹出现问题,我无法解决,但我想保留当前工作文件夹不变,那么如何从远程仓库“重置”我的 .git
文件夹?.git
文件夹。该过程假定您当前的本地分支与远程分支相同。如果不是,则会丢失任何本地提交,但您不会丢失本地更改。此外,“被忽略”的任何本地文件都将保持不变。git status
.git/hooks
文件夹.git
文件夹git init
origin
远程:git remote add origin *url*
git fetch
git checkout -b *branch*
git reset --mixed origin/*branch*
.git/hooks
文件夹。git reset --mixed
而不是git reset --soft
加上git add .
的改进由@MarkAdelsberger提供(请参见注释)。.git/hooks
文件夹的改进由@gary-kindel提供(请参见注释)。--mixed
,并且除非/直到我特别想重新暂存更改,否则跳过第8步。 - Mark Adelsberger假设我们在混乱的仓库上面的目录中,该仓库名为repo
,并且我们处于带有GNU Coreutils的shell环境中:
rm -rf repo/.git
git clone -d url://remote/repo -b some-branch new-repo
cp -a repo/. new-repo/.
new-repo
,否则:$ rm -rf repo
$ mv new-repo repo