Git:我怎么不承诺在原点/主人之前

20 git version-control

我使用我从主分支机构创建的分支机构100%工作.既然一位同事已经回到原点/主人那里,我试图将这些变化推到我的个人分支中.当我做一个'git checkout master'然后是'git status'时,我会得到以下信息:

# Your branch is ahead of 'origin/master' by 2 commits.
Run Code Online (Sandbox Code Playgroud)

如何通过2次提交从未提交过的分支?什么是找出它们是什么提交并从根本上撤消它们的最佳方法?我不希望将任何东西推回原点/主人,因为这可能会导致未知的冲突.

ara*_*nid 35

要查看HEAD中不在origin/master中的提交:

git log origin/master..
Run Code Online (Sandbox Code Playgroud)

将它们吹走并使你的HEAD与origin/master相同:

git reset --hard origin/master
Run Code Online (Sandbox Code Playgroud)

您是如何将更改推送到自己的存储库的?我注意到你提到"推"......原产地是中央回购?你同事的回购?我怀疑你真正想做的是直接或从中央临时点拉你的同事的变化,而不是推动.可能只是您在origin/master之前的2次更改实际上是您的同事的更改,但是origin/master tracking分支是陈旧的.

  • 使用带有*范围*修订版的git命令,A..B是"B ^ A"或"B - not A"的简写."A .."本身就是"HEAD - not A"的缩写.git加载修订版B,然后返回修订版图,当遇到可从A(通常是A本身)到达的提交时停止.在简单的修订历史中,图形只是一条线,这简化了显示A之后和包括B之后的提交. (3认同)