弄乱了我的git repo,无法弄清楚如何正确同步

时间:2019-10-06 12:07:29

标签: git github

(错误地)尝试提交/推送到github后,我向.gitignore添加了文件。它失败了,因为它太大了。我通过sudo git reset --hard a6563c9(发生混乱之前的最后一项,从git log --oneline返回)进行重置。

这很好,但是现在它说我的branch is up to date with 'origin/master'是不对的(我已经更改了其他几个文件)。

我不确定如何重新扫描仓库中的所有文件(.gitignore中的文件除外)以进行更改,因此我可以提交/推送所有更改。

我尝试过:

git rm --cached -r .
git reset .

以及git update-index --really-refreshgit update-index --no-skip-worktree (最后一个返回Ignoring path吗?)

在尝试branch is up to date with 'origin/master'时,我没有尝试更改git push

PS:我后来发现我应该可以使用

git reset --soft HEAD^
git reset filename

然后添加到.gitignore ...但这有点晚了...

1 个答案:

答案 0 :(得分:1)

您收到的消息是 branch是最新的'origin / master' 因为您的本地分支和远程分支指向同一提交。您的 git reset --hard a6563c9 做到了。

您可以通过发出另一个git reset命令将本地主控恢复到其原始提交。您需要原始提交的提交ID。这可以使用git reflog找到。之后,您可以修改错误的提交。

Collection rows = query.query {
    sheet(name({ name.startsWith('Con') })) {
        row(1)
    }
}.rows

我建议您始终仔细检查要提交的文件列表。