我的Mac出现硬件故障,因此我将一个git存储库(包含所有文件的文件夹,包括.git文件)传输到Debian机器。从那个Debian机器,我做了一个提交并推送到origin / master(在Github上)并在那之后对文件进行了一些未提交的更改。
修复Mac后,我将这个repo(包括未提交的更改)从Debian转移回Mac。然后我在Mac上做了一个提交。 Git(通过'git status')报告我在origin / master之前提交了三个提交。但是,如果我比较Mac和Github上的提交历史,我实际上只提前一次提交。
我害怕在不损坏某些东西的情况下推动原点/主人。我是否可以将本地仓库更正为应该提前进行的一次提交,或者是否会自行修复?
答案 0 :(得分:1)
将本地master
分支到临时分支并在本地重置master
状态:
git branch temporary master # create a local branch called 'temporary' based on master
git checkout master # checkout master if you haven't already
git fetch && git reset --hard origin/master # reset it to origin
现在查看历史记录(您在master
上)并确保其正确无误。如果不是,临时分支是正确的:
git checkout -B master temporary # reset master branch to temporary's state