fork git 个分支并使用 SmartGit 查看它们

fork git branches and see them with SmartGit

根据这个 post 我想查看 SmartGit git 客户端对新分支的影响。下面,我将详细解释我所做的步骤以及SmartGit显示的内容和我期望显示的内容:

步骤:

s1) 通过克隆远程仓库创建本地 git 仓库:

git clone https:/myusername:mypassword@remoteRepoAddress/repo3

s2) cd 到repo3 git 我刚刚创建的本地存储库然后在新文件中添加文本:

echo "aaa" >> file1

s3) 添加要提交的文件:

git add .

s4) 提交更改:

git commit -m "commit1"

s5) 向文件 1 添加另一行并提交更改

echo "bbb" >> file1
git add .
git commit -m "commit2"

s6) 将更改推送到远程存储库:

git push origin master

现在,SmartGit 显示一行,对于 master 分支,两个提交:

s7) 创建另一个分支 "newBranch1":

git checkout -b newBranch1

s8) 然后我在这个分支上做一个提交:

echo "row1" >> file2
git add .
git commit -m "commit1_newBranch1"

现在,SmartGit 显示:

根据开头提到的 post 中的“图 20”,可以:与 master 分支上的最后一次提交相比,提交已经前进了一个节点。 s9) 然后我切换回 master 分支,并从 master 上的最后一个提交点创建另一个分支“newBranch2”;我添加了一个包含文本“row1”的新文件“file3”,然后我提交了更改:

git checkout master
git checkout -b newBranch2
echo "row1" >> file3
git add .
git commit -m "commit1_newBranch2"

现在 SmartGit 显示:

而且我希望在上面提到的 post 中看到一棵像“图 21”中的树。或者如下:

 newBranch2 o   o newBranch1  
             \ /  
              o master's head
              |
              o
              |

我是不是误解了 git an/or SmartGit 的工作原理? 如果是这样,请指导我提供具体答案。 提前致谢

您了解 git 和 SmartGit 的工作方式。但是,我认为您误解了 Smartgit 显示图表的方式。 您可以使用以下命令显示原始 git 图:

git log --graph --decorate --oneline --all

我认为你应该使用 Gitkraken:它会比 Ubuntu 上的 Smartgit 更好:https://www.gitkraken.com/

希望有用!!!

在我看来,您误解了 SmartGit 日志视图的工作方式。

您看到的是 newBranch2 的历史记录,因为那是 HEAD 所在的位置(HEAD 的历史记录是大多数 git 客户端的默认日志)。我认为您正在查看默认视图中的 "Journal" 选项卡,是吗?

您想要的是显示所有 refs 历史记录的日志。如果您单击右上角的 log 按钮,它会弹出一个 window,它开始显示相同的 "history of HEAD",但左侧有一个复选框树,您可以在其中 select你还想看什么。标记 "local branches" 复选框,您应该会看到您想要的内容。您会注意到,您还可以 select 特定分支、远程分支引用(通过远程或通过单个引用)、标签(特定标签或所有标签)和悬空提交(它称为 'recyclable commits') .