无法看到主分支的所有 git 次提交
Can't see all git commits of branch from master
我在一个工作文件夹中检出了主要的 master 分支。我创建了另一个分支(我们称之为 "work")。我检查了另一个工作文件夹中的工作分支。在每个工作文件夹中,我做了不同的更改。我已经对两个分支做出了承诺。在工作分支上,我做了几轮更改,添加了一些标签,进行了最后的提交。我将所有更改推送到原点。
回到主工作副本,我提取了更改。在主工作副本中,我可以执行 git tag
并查看我在工作分支上制作的标签。请注意,我没有尝试任何合并。
问题来了。如果在我的主工作副本中,我做了:git log work
,我没有看到在工作分支上进行的最后几次提交。
这是我在工作分支工作文件夹中显示的提交列表 git log work
:
commit 6bc8c6e2e25541a204f2d83c3e9a7bbc5e0c43cf (HEAD -> work, tag: rel_6_6_4, origin/work)
commit c722d68bd81efabf5ab87dec433a8b7894ef2779 (tag: rel_6_6_3)
commit e4cedcb225af834c243545cccb3bcf44244ef5f6
commit a132dceff1ac86196d7012b8839e2731e775ea71 (tag: rel_6_6_2)
commit ac3759e8b87825e2c2d3c73c65fff9e033f28dcd
commit 1bedc55d00ac751651b33ca7eb82c4a09e046a8e
commit 428bfd95d9b195ebac61203ef4fd628a5e40a66d
commit f5a2fb8528bbdba76f117910bdc63b4bc68044cb
commit 5c51b13144e01fb190cf9f8840a978a3c51a6b76
commit 94f5dd9998fc977257742f4f29d1ab83fc4323b1
commit 17cb8e66db3bfc3c7fdbe5ebde7e41a1dbbd9614
此列表中显示的最后一次提交是我创建工作分支的地方。
如果我在工作文件夹中执行 git status
,我会看到:
On branch work
Your branch is up to date with 'origin/work'
如果我 运行 git log work
在我的主工作文件夹中,我会看到:
commit ac3759e8b87825e2c2d3c73c65fff9e033f28dcd (work)
commit 1bedc55d00ac751651b33ca7eb82c4a09e046a8e
commit 428bfd95d9b195ebac61203ef4fd628a5e40a66d
commit f5a2fb8528bbdba76f117910bdc63b4bc68044cb
commit 5c51b13144e01fb190cf9f8840a978a3c51a6b76
commit 94f5dd9998fc977257742f4f29d1ab83fc4323b1
commit 17cb8e66db3bfc3c7fdbe5ebde7e41a1dbbd9614
如您所见,最近 4 次提交到 work 分支没有出现在这个列表中。
并在主工作文件夹中执行 git status
显示:
On branch master
Your branch is up to date with 'origin/master'.
如何让工作分支的最后 4 次提交显示在我的 master 分支的工作副本中?
谜题的另一个线索。如果我从主工作文件夹执行 git log origin/work
,提交列表如下所示:
commit 6bc8c6e2e25541a204f2d83c3e9a7bbc5e0c43cf (tag: rel_6_6_4, origin/work)
commit c722d68bd81efabf5ab87dec433a8b7894ef2779 (tag: rel_6_6_3)
commit e4cedcb225af834c243545cccb3bcf44244ef5f6
commit a132dceff1ac86196d7012b8839e2731e775ea71 (tag: rel_6_6_2)
commit ac3759e8b87825e2c2d3c73c65fff9e033f28dcd (work)
commit 1bedc55d00ac751651b33ca7eb82c4a09e046a8e
commit 428bfd95d9b195ebac61203ef4fd628a5e40a66d
commit f5a2fb8528bbdba76f117910bdc63b4bc68044cb
commit 5c51b13144e01fb190cf9f8840a978a3c51a6b76
commit 94f5dd9998fc977257742f4f29d1ab83fc4323b1
commit 17cb8e66db3bfc3c7fdbe5ebde7e41a1dbbd9614
如何让 (work)
移动到第一个提交?
如果需要更多信息,请告诉我,以便我将其添加到问题中。
你的master文件夹正在跟踪master,没用。你需要做 git log origin/work
编辑:
您需要更新主工作文件夹中的工作分支
git checkout work
git merge origin/work
git log work
回到master
git checkout master
上述命令的快捷方式:
git push . origin/work:work
我在一个工作文件夹中检出了主要的 master 分支。我创建了另一个分支(我们称之为 "work")。我检查了另一个工作文件夹中的工作分支。在每个工作文件夹中,我做了不同的更改。我已经对两个分支做出了承诺。在工作分支上,我做了几轮更改,添加了一些标签,进行了最后的提交。我将所有更改推送到原点。
回到主工作副本,我提取了更改。在主工作副本中,我可以执行 git tag
并查看我在工作分支上制作的标签。请注意,我没有尝试任何合并。
问题来了。如果在我的主工作副本中,我做了:git log work
,我没有看到在工作分支上进行的最后几次提交。
这是我在工作分支工作文件夹中显示的提交列表 git log work
:
commit 6bc8c6e2e25541a204f2d83c3e9a7bbc5e0c43cf (HEAD -> work, tag: rel_6_6_4, origin/work) commit c722d68bd81efabf5ab87dec433a8b7894ef2779 (tag: rel_6_6_3) commit e4cedcb225af834c243545cccb3bcf44244ef5f6 commit a132dceff1ac86196d7012b8839e2731e775ea71 (tag: rel_6_6_2) commit ac3759e8b87825e2c2d3c73c65fff9e033f28dcd commit 1bedc55d00ac751651b33ca7eb82c4a09e046a8e commit 428bfd95d9b195ebac61203ef4fd628a5e40a66d commit f5a2fb8528bbdba76f117910bdc63b4bc68044cb commit 5c51b13144e01fb190cf9f8840a978a3c51a6b76 commit 94f5dd9998fc977257742f4f29d1ab83fc4323b1 commit 17cb8e66db3bfc3c7fdbe5ebde7e41a1dbbd9614
此列表中显示的最后一次提交是我创建工作分支的地方。
如果我在工作文件夹中执行 git status
,我会看到:
On branch work Your branch is up to date with 'origin/work'
如果我 运行 git log work
在我的主工作文件夹中,我会看到:
commit ac3759e8b87825e2c2d3c73c65fff9e033f28dcd (work) commit 1bedc55d00ac751651b33ca7eb82c4a09e046a8e commit 428bfd95d9b195ebac61203ef4fd628a5e40a66d commit f5a2fb8528bbdba76f117910bdc63b4bc68044cb commit 5c51b13144e01fb190cf9f8840a978a3c51a6b76 commit 94f5dd9998fc977257742f4f29d1ab83fc4323b1 commit 17cb8e66db3bfc3c7fdbe5ebde7e41a1dbbd9614
如您所见,最近 4 次提交到 work 分支没有出现在这个列表中。
并在主工作文件夹中执行 git status
显示:
On branch master Your branch is up to date with 'origin/master'.
如何让工作分支的最后 4 次提交显示在我的 master 分支的工作副本中?
谜题的另一个线索。如果我从主工作文件夹执行 git log origin/work
,提交列表如下所示:
commit 6bc8c6e2e25541a204f2d83c3e9a7bbc5e0c43cf (tag: rel_6_6_4, origin/work) commit c722d68bd81efabf5ab87dec433a8b7894ef2779 (tag: rel_6_6_3) commit e4cedcb225af834c243545cccb3bcf44244ef5f6 commit a132dceff1ac86196d7012b8839e2731e775ea71 (tag: rel_6_6_2) commit ac3759e8b87825e2c2d3c73c65fff9e033f28dcd (work) commit 1bedc55d00ac751651b33ca7eb82c4a09e046a8e commit 428bfd95d9b195ebac61203ef4fd628a5e40a66d commit f5a2fb8528bbdba76f117910bdc63b4bc68044cb commit 5c51b13144e01fb190cf9f8840a978a3c51a6b76 commit 94f5dd9998fc977257742f4f29d1ab83fc4323b1 commit 17cb8e66db3bfc3c7fdbe5ebde7e41a1dbbd9614
如何让 (work)
移动到第一个提交?
如果需要更多信息,请告诉我,以便我将其添加到问题中。
你的master文件夹正在跟踪master,没用。你需要做 git log origin/work
编辑: 您需要更新主工作文件夹中的工作分支
git checkout work
git merge origin/work
git log work
回到master
git checkout master
上述命令的快捷方式:
git push . origin/work:work