我目前正在查看SWI Prolog git存储库(克隆到我的本地计算机)。
为此,我使用
显示提交图git log --graph --full-history --all --color \
--pretty=format:"%x1b[31m%h%x09%x1b[32m%d%x1b[0m%x20%s"
以及使用gitk
以下是git log
输出的一部分:
如果我正确解释了上述内容:
gitk
(下面的输出)的输出进行比较,则以标记" V7.4.1"结尾的分支在gitk
中完全不可见。 2f745e6(" CLEANUP:允许gcc ......")根本没有任何分支(下图中的红色圆圈),只有主分支及其下一个提交,c6b9256,"更新了clib&显示#34;,有没有办法看到"陈旧"分支,也是?答案 0 :(得分:4)
Git中的提交是单向连接的;提交知道它的父母是什么,就是这样。当public function rules()
{
return [
'name' => 'required|unique:collections,table_name'
];
}
public function messages()
{
return [
'name.required' => 'You need to choose a name for your collection',
'name.unique' => 'A collection or collection table with this name already exists',
];
}
public function validate($data)
{
return Validator::make($data, $this->rules(), $this->messages());
}
或git log
显示图表时,他们必须在特定点,分支或标记或提交时开始阅读图表。然后他们只能看到那个标签的祖先。默认情况下,gitk
和gitk
都以这种方式工作,并从您当前的提交开始。
但您使用了git log
。这将从每个分支头和标签开始,并显示可到达的所有内容。它会向你显示每个分支和每个标记及其所有祖先的提交。
git log --all
将从当前提交向后工作。你只会看到当前提交的祖先。 gitk
不是当前提交的祖先,所以它甚至都不知道它。
比较苹果与苹果:v7.4.1
与gitk --all
和git log --all
与gitk
。
有一个以标记“V7.4.1”结尾的分支(提交df973c8周围的红色圆圈)。这个分支已经陈旧,因为没有进一步的工作。这是对的吗?
这不是分支,而是标签。分支和标签都只是指向提交的标签,但标签不应该移动。标签旨在标记单个提交,在本例中是v7.4.1的发布,因此它们将始终是“陈旧的”。不要删除它们,它们就在那里你可以找到重要的提交。
相同的分支早于主分支(在2f745e6之后的提交675a4049周围的蓝色圆圈)。我不明白那个时候来回的对角线。为什么他们“过度”?
Git中的分支是字面上的分支。你看到的是Git绘制那些分支。但它不能总是巧妙地适应屏幕,所以有时它们会交叉。这就像俯视高速公路立交桥。
675a4049是2f745e6和其他东西进一步合并的地方。