<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>http://wiki.eijux.com/index.php?action=history&amp;feed=atom&amp;title=Git%EF%BC%9A%E5%91%BD%E4%BB%A4%E8%BE%A8%E6%9E%90</id>
	<title>Git：命令辨析 - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.eijux.com/index.php?action=history&amp;feed=atom&amp;title=Git%EF%BC%9A%E5%91%BD%E4%BB%A4%E8%BE%A8%E6%9E%90"/>
	<link rel="alternate" type="text/html" href="http://wiki.eijux.com/index.php?title=Git%EF%BC%9A%E5%91%BD%E4%BB%A4%E8%BE%A8%E6%9E%90&amp;action=history"/>
	<updated>2026-05-17T02:09:57Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.38.2</generator>
	<entry>
		<id>http://wiki.eijux.com/index.php?title=Git%EF%BC%9A%E5%91%BD%E4%BB%A4%E8%BE%A8%E6%9E%90&amp;diff=5892&amp;oldid=prev</id>
		<title>Eijux：​创建页面，内容为“category:Git  == pull 与 fetch ==  More precisely, git pull runs git fetch with the given parameters and calls git merge to merge the retrieved branch heads into the current branch. With --rebase, it runs git rebase instead of git merge.    更准确地说，'''git pull''' 使用给定的参数运行 '''git fetch''' ，并调用 '''git merge''' 将检索到的分支头合并到当前分支中。 带有 '''--rebase''' 时，它运行 '''git rebase''' 而不…”</title>
		<link rel="alternate" type="text/html" href="http://wiki.eijux.com/index.php?title=Git%EF%BC%9A%E5%91%BD%E4%BB%A4%E8%BE%A8%E6%9E%90&amp;diff=5892&amp;oldid=prev"/>
		<updated>2022-06-03T21:01:50Z</updated>

		<summary type="html">&lt;p&gt;创建页面，内容为“&lt;a href=&quot;/%E5%88%86%E7%B1%BB:Git&quot; title=&quot;分类:Git&quot;&gt;category:Git&lt;/a&gt;  == pull 与 fetch ==  More precisely, git pull runs git fetch with the given parameters and calls git merge to merge the retrieved branch heads into the current branch. With --rebase, it runs git rebase instead of git merge.    更准确地说，&amp;#039;&amp;#039;&amp;#039;git pull&amp;#039;&amp;#039;&amp;#039; 使用给定的参数运行 &amp;#039;&amp;#039;&amp;#039;git fetch&amp;#039;&amp;#039;&amp;#039; ，并调用 &amp;#039;&amp;#039;&amp;#039;git merge&amp;#039;&amp;#039;&amp;#039; 将检索到的分支头合并到当前分支中。 带有 &amp;#039;&amp;#039;&amp;#039;--rebase&amp;#039;&amp;#039;&amp;#039; 时，它运行 &amp;#039;&amp;#039;&amp;#039;git rebase&amp;#039;&amp;#039;&amp;#039; 而不…”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[category:Git]]&lt;br /&gt;
&lt;br /&gt;
== pull 与 fetch ==&lt;br /&gt;
 More precisely, git pull runs git fetch with the given parameters and calls git merge to merge the retrieved branch heads into the current branch. With --rebase, it runs git rebase instead of git merge.&lt;br /&gt;
 &lt;br /&gt;
 更准确地说，'''git pull''' 使用给定的参数运行 '''git fetch''' ，并调用 '''git merge''' 将检索到的分支头合并到当前分支中。 带有 '''--rebase''' 时，它运行 '''git rebase''' 而不是 '''git merge'''。&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 即，在默认模式下，'''git pull''' 是 '''git fetch''' 后跟 '''git merge FETCH_HEAD''' 的缩写。&lt;br /&gt;
&lt;br /&gt;
=== fetch 理解 ===&lt;br /&gt;
# fetch 是否有下载？&lt;br /&gt;
#: 当然有下载，拉取的更新内容保存在“'''.git\objects'''”及“'''.git\refs'''”中，只是没有合并到当前的工作区，所以没有直观的改变；毕竟merge是不会有下载操作的。&lt;br /&gt;
# fetch 更新的是什么内容？&lt;br /&gt;
## fetch 会下载远程分支 &amp;lt;code&amp;gt;orign/master&amp;lt;/code&amp;gt; 的文件存储对象到 &amp;lt;code&amp;gt;.git\objects&amp;lt;/code&amp;gt; ；&lt;br /&gt;
## fetch 会更新 &amp;lt;code&amp;gt;FETCH_HEAD&amp;lt;/code&amp;gt; 文件（如：&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot; inline&amp;gt;5e26159ad738b08b9321eba9ecaeff39c8acc42f		branch 'master' of github.com:Eijux/eijux&amp;lt;/syntaxhighlight&amp;gt;），其中commit_ID对应 &amp;lt;code&amp;gt;.git\objects&amp;lt;/code&amp;gt; 的对象；&lt;br /&gt;
# 本地文件与分支的关系？&lt;br /&gt;
#: &amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
.git\refs\head\          [本地分支]&lt;br /&gt;
.git\refs\remotes\     [正在跟踪的分支]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 使用 ===&lt;br /&gt;
# 当本地没有新的修改时：&lt;br /&gt;
## 使用 '''fetch''' 获取远程分支；&lt;br /&gt;
## 重新 '''checkout''' 该分支。【？？？或许是这样】&lt;br /&gt;
# 当本地有新修改（未 commit 的修改、未 push 的 commit）时：&lt;br /&gt;
## 必须保证工作区没有修改；&lt;br /&gt;
##: 可将修改的内容：1、提交为新的 commit；2、保存到 stage；&lt;br /&gt;
## 使用 '''pull''' 拉取远程分支并合并（merge 或 rebase）；&lt;br /&gt;
## 解决合并冲突（如果有），并在本地提交；&lt;br /&gt;
## 通过 '''push''' 推送本地分支到远程。&lt;br /&gt;
&lt;br /&gt;
== merge 与 rebase ==&lt;br /&gt;
merge 与 rebase 同为合并分支，但是还是有区别的：&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! merge !! rebase&lt;br /&gt;
|-&lt;br /&gt;
| [[File:git merge.png|400px]]&lt;br /&gt;
| [[File:git rebase.png|400px]]&lt;br /&gt;
|-&lt;br /&gt;
| 产生新的提交&lt;br /&gt;
| 没有新提交，但会合并之前的commit历史&lt;br /&gt;
|-&lt;br /&gt;
| 不改变当前分支的开始位置&lt;br /&gt;
| 改变了当前分支的开始位置&lt;br /&gt;
|-&lt;br /&gt;
| 只处理一次冲突&lt;br /&gt;
| 可能会有多次冲突处理&lt;br /&gt;
|-&lt;br /&gt;
| 合并后的所有 commit 会按照提交时间从旧到新排列&lt;br /&gt;
| 合并后的 commit 顺序不一定按照 commit 的提交时间排列&lt;br /&gt;
|-&lt;br /&gt;
| 合并后分支过程信息更多更复杂&lt;br /&gt;
| 合并后分支上每个 commit 点都是相对独立完整的功能单元&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 执行过程：merge ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! colspan=&amp;quot;2&amp;quot; | merge的过程&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[File:git merge合并过程.jpg|400px]]&lt;br /&gt;
| 以左图为例，&amp;lt;br/&amp;gt;“'''&amp;lt;code&amp;gt;git merge origin&amp;lt;/code&amp;gt;'''”将两个分支的最新commit的内容进行合并，进行冲突处理之后作为新的commit提交到“mywork”分支：&lt;br /&gt;
|-&lt;br /&gt;
| git logg查看commit时，其顺序为：（有时间顺序）&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
          C1-----C2-----C3-----C4-----C7&lt;br /&gt;
         └-------C5-----C6---------┘&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== 什么是“Fast-forward”？ ====&lt;br /&gt;
 Fast-forward，即“快速合并”：&lt;br /&gt;
 &lt;br /&gt;
     由于你想要合并的分支 hotfix 所指向的提交 C4 是你所在的提交 C2 的直接后继， 因此 Git 会直接将指针向前移动。——换句话说，当你试图合并两个分支时， 如果顺着一个分支走下去能够到达另一个分支，那么 Git 在合并两者的时候，只会简单的将指针向前推进（指针右移），因为这种情况下的合并操作没有需要解决的分歧——这就叫做 “快进（fast-forward）”。&lt;br /&gt;
&lt;br /&gt;
示例：&lt;br /&gt;
# Fast-forward：&lt;br /&gt;
#: [[File:Git：merge_e.g._ff_1.png|400px]]   &amp;lt;&amp;lt;&amp;lt;：前   |   后：&amp;gt;&amp;gt;&amp;gt;   [[File:Git：merge_e.g._ff_2.png|400px]]&lt;br /&gt;
# 非 Fast-forward：&lt;br /&gt;
#: [[File:Git：merge_e.g._not-ff_1.png|400px]]   &amp;lt;&amp;lt;&amp;lt;：前   |   后：&amp;gt;&amp;gt;&amp;gt;   [[File:Git：merge_e.g._not-ff_2.png|400px]]&lt;br /&gt;
&lt;br /&gt;
=== 执行过程：rebase ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! colspan=&amp;quot;2&amp;quot; | rebase的过程&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | [[File:git rebase合并过程.jpg|400px]]&lt;br /&gt;
| &lt;br /&gt;
左图：&lt;br /&gt;
# “'''&amp;lt;code&amp;gt;git rebase origin&amp;lt;/code&amp;gt;'''”会把“mywork”分支里的所有提交(commit)取消掉，并临时保存为补丁(位于“.git/rebase”)；&lt;br /&gt;
# 然后把“mywork”分支更新为到“origin”分支末尾，最后把保存的这些补丁应用到“mywork”分支上。&lt;br /&gt;
: （老的commit会被丢弃，并在git gc发生时被删除？）（参见：[https://blog.csdn.net/u014551624/article/details/78361838 图解git rebase 与merge的区别]）&lt;br /&gt;
|-&lt;br /&gt;
| git logg查看commit时，其顺序为：（C5、C6未按时间顺序）&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
          C1-----C2-----C3-----C4-----C5-----C6&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== 关于rebase的冲突 ====&lt;br /&gt;
rebase过程中可能出现多次冲突，Git会停止rebase来进行冲突解决；&lt;br /&gt;
# 在解决冲突后，用&amp;quot; git add &amp;quot;命令去更新这些内容的索引（无需执行&amp;lt;code&amp;gt;git commit&amp;lt;/code&amp;gt;）；&lt;br /&gt;
# 执行“&amp;lt;code&amp;gt;git rebase --continue&amp;lt;/code&amp;gt;”继续rebase过程； &lt;br /&gt;
: 在rebase过程的任何时候，都可以用“&amp;lt;code&amp;gt;git rebase --abort&amp;lt;/code&amp;gt;”来终止rebase，并且将分支回退到rebase开始前状态。&lt;br /&gt;
&lt;br /&gt;
=== 使用 ===&lt;br /&gt;
 对于：&lt;br /&gt;
 git checkout branchA&lt;br /&gt;
 git merge branchB   是将 B 合并到 A&lt;br /&gt;
 git rebase branchB   是将 A 变基到 B（将A中的commit重新提交到B？？？但是IDEA文档中说的好像相反）&lt;br /&gt;
&lt;br /&gt;
示例：&lt;br /&gt;
# merge：将 hotfix 合并到 master&lt;br /&gt;
#: &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
$ git checkout master&lt;br /&gt;
$ git merge hotfix&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
#: [[File:Git：merge_e.g._not-ff_1.png|400px]]   &amp;lt;&amp;lt;&amp;lt;：前   |   后：&amp;gt;&amp;gt;&amp;gt;   [[File:Git：merge_e.g._not-ff_2.png|400px]]&lt;br /&gt;
# rebase：将 experiment 变基到 master&lt;br /&gt;
#: &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
$ git checkout experiment&lt;br /&gt;
$ git rebase master&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
#: [[File:Git：rebase_e.g._1.png|400px]]   &amp;lt;&amp;lt;&amp;lt;：前   |   后：&amp;gt;&amp;gt;&amp;gt;   [[File:Git：rebase_e.g._2.png|400px]]&lt;br /&gt;
&lt;br /&gt;
=== The Golden Rule of Rebasing rebase ===&lt;br /&gt;
'''&amp;lt;pre&amp;gt;&lt;br /&gt;
never use it on public branches(不要在公共分支上使用)&lt;br /&gt;
&amp;lt;/pre&amp;gt;'''&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! colspan=&amp;quot;2&amp;quot; | rebase的过程&lt;br /&gt;
|-&lt;br /&gt;
| [[File:golden rule in using rebase.png|400px]]&lt;br /&gt;
| &lt;br /&gt;
如左图，执行&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot; inline&amp;gt;git checkout feature&amp;lt;/syntaxhighlight&amp;gt;与&amp;lt;syntaxhighlight lang=&amp;quot;shell&amp;quot; inline&amp;gt;git rebase master&amp;lt;/syntaxhighlight&amp;gt;，rebase将master所有commit移动到feature之后：&lt;br /&gt;
# 分支历史与其他master分支使用者的产生分歧；&lt;br /&gt;
# master的分支历史追踪变得极为困难，不利于问题排查；&lt;br /&gt;
所以，在公共分支、需要保留历史的分支，不应该使用rebase！&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== reset、revert与checkout ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width: 4%;&amp;quot;|&lt;br /&gt;
! style=&amp;quot;width: 48%;&amp;quot;|Commit-level &lt;br /&gt;
! style=&amp;quot;width: 48%;&amp;quot;|File-level&lt;br /&gt;
|-&lt;br /&gt;
! '''&amp;lt;code&amp;gt;checkout&amp;lt;/code&amp;gt;'''&lt;br /&gt;
|&lt;br /&gt;
[[File:checkout_Commit.png|center|400px]]&lt;br /&gt;
* '''&amp;lt;code&amp;gt;git checkout &amp;lt;commit/HEAD^?&amp;gt;&amp;lt;/code&amp;gt;'''：&lt;br /&gt;
*: 移动HEAD到另外一个分支（或commit），并更新工作目录。&lt;br /&gt;
|&lt;br /&gt;
[[File:checkout_file.png|center|400px]]&lt;br /&gt;
* '''&amp;lt;code&amp;gt;git checkout &amp;lt;commit/HEAD^?&amp;gt; &amp;lt;file&amp;gt;&amp;lt;/code&amp;gt;'''：&lt;br /&gt;
*: 将worktree文件&amp;lt;file&amp;gt;重置到指定commit的版本（将丢弃工作区文件&amp;lt;file&amp;gt;未add的修改）。&lt;br /&gt;
|-&lt;br /&gt;
! '''&amp;lt;code&amp;gt;reset&amp;lt;/code&amp;gt;'''&lt;br /&gt;
|&lt;br /&gt;
[[File:reset_Commit.png|center|400px]]&lt;br /&gt;
* '''&amp;lt;code&amp;gt;git reset [--soft/--mixed/--hard] &amp;lt;commit/HEAD^?&amp;gt;&amp;lt;/code&amp;gt;'''：&lt;br /&gt;
*: 将分支的指向其他commit，以进行版本回退（被跳过的commit成了dangling commit，将在下次git垃圾回收被删除）。&lt;br /&gt;
|&lt;br /&gt;
[[File:reset_File.png|center|400px]]&lt;br /&gt;
* '''&amp;lt;code&amp;gt;git reset &amp;lt;commit/HEAD^?&amp;gt; &amp;lt;file&amp;gt;&amp;lt;/code&amp;gt;'''：&lt;br /&gt;
*: 将stage文件&amp;lt;file&amp;gt;重置到指定commit的版本。&lt;br /&gt;
*（&amp;lt;code&amp;gt;[--soft/--mixed/--hard]&amp;lt;/code&amp;gt;对此不起作用，stage总会被更新, worktree不会被更新）&lt;br /&gt;
|-&lt;br /&gt;
! '''&amp;lt;code&amp;gt;revert&amp;lt;/code&amp;gt;'''&lt;br /&gt;
|&lt;br /&gt;
[[File:revert_Commit.png|center|400px]]&lt;br /&gt;
* '''&amp;lt;code&amp;gt;git reset &amp;lt;commit/HEAD^?&amp;gt;&amp;lt;/code&amp;gt;'''：&lt;br /&gt;
*: 通过新建commit进行反向修改，以实现撤销某个commit的修改。&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 撤销commit：reset 与 revert ===&lt;br /&gt;
reset 与 revert 都是进行“撤销”操作，但其效果并不相同：&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! reset !! revert&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
* 直接删除指定的commit。（就像从没有发生过一样，即'''撤销了操作'''）&lt;br /&gt;
| &lt;br /&gt;
* 提交新版本，将需要revert的版本内容反向修改回去。（提交新的commit来“纠正”修改，即'''撤销了修改'''）&lt;br /&gt;
# 之前的commit和history都会保留；&lt;br /&gt;
# 版本会递增，不影响之前提交的内容；&lt;br /&gt;
|- &lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;|对于分支merge的撤销操作（如将“eijux”合并到“master”）：&lt;br /&gt;
# reset：&lt;br /&gt;
#* reset之后与merge之前一样，两个分支未被合并，且没有merge的操作历史；&lt;br /&gt;
#revert：&lt;br /&gt;
#* revert之后，分支合并状态不变，并有merge操作的历史，但“master”的内容与merge之前一致，；&lt;br /&gt;
#*:（即只是撤销了“eijux”合并到“master”所修改的“master内容”，merge操作仍然有效）&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== log 与 reflog ==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! log !! reflog&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
显示所有提交过的版本信息&lt;br /&gt;
|&lt;br /&gt;
查看所有分支的所有操作记录&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; style=&amp;quot;text-align:center;&amp;quot;| &lt;br /&gt;
对于已经被删除的&amp;lt;code&amp;gt;commit&amp;lt;/code&amp;gt;记录和&amp;lt;code&amp;gt;reset&amp;lt;/code&amp;gt;的操作：&amp;lt;code&amp;gt;git log&amp;lt;/code&amp;gt;则没有相关的commit信息，&amp;lt;code&amp;gt;git reflog&amp;lt;/code&amp;gt;则可以看到与commit相关的操作记录；&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;PowerShell&amp;quot;&amp;gt;&lt;br /&gt;
Microsoft Windows [版本 10.0.19041.508]&lt;br /&gt;
(c) 2019 Microsoft Corporation。保留所有权利。&lt;br /&gt;
&lt;br /&gt;
D:\git\eijux&amp;gt;git log&lt;br /&gt;
commit 5e26159ad738b08b9321eba9ecaeff39c8acc42f (HEAD -&amp;gt; master, tag: rc1.0, eijux/master)&lt;br /&gt;
Author: Eijux &amp;lt;chen@eijux.com&amp;gt;&lt;br /&gt;
Date:   Fri Nov 1 01:18:47 2019 +0800&lt;br /&gt;
&lt;br /&gt;
    idea commit test 01&amp;lt;E7&amp;gt;&amp;lt;82&amp;gt;&amp;lt;B9&amp;gt;18&amp;lt;E5&amp;gt;&amp;lt;88&amp;gt;&amp;lt;86&amp;gt;&lt;br /&gt;
&lt;br /&gt;
commit ffa14211ab7088d9782de019328238dcfe09a4bc&lt;br /&gt;
Merge: 3fbc79a fc32a4a&lt;br /&gt;
Author: Eijux &amp;lt;chen@eijux.com&amp;gt;&lt;br /&gt;
Date:   Thu Oct 31 16:03:24 2019 +0800&lt;br /&gt;
&lt;br /&gt;
    Merge branch 'master' of github.com:Eijux/eijux&lt;br /&gt;
&lt;br /&gt;
commit 3fbc79ae2c8b7199c22133d1f3e4115848dbe749&lt;br /&gt;
Author: Eijux &amp;lt;chen@eijux.com&amp;gt;&lt;br /&gt;
Date:   Thu Oct 31 04:19:09 2019 +0800&lt;br /&gt;
&lt;br /&gt;
    idea commit test&lt;br /&gt;
&lt;br /&gt;
commit fc32a4a8e24b963097f088a975d05ffa68f0c0bb&lt;br /&gt;
Author: Eijux &amp;lt;chen@eijux.com&amp;gt;&lt;br /&gt;
Date:   Wed Oct 30 05:13:47 2019 +0800&lt;br /&gt;
&lt;br /&gt;
    add gitignore file&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
(END)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;PowerShell&amp;quot;&amp;gt;&lt;br /&gt;
Microsoft Windows [版本 10.0.19041.508]&lt;br /&gt;
(c) 2019 Microsoft Corporation。保留所有权利。&lt;br /&gt;
&lt;br /&gt;
D:\git\eijux&amp;gt;git reflog&lt;br /&gt;
5e26159 (HEAD -&amp;gt; master, eijux/master) HEAD@{0}: pull eijux master: Fast-forward&lt;br /&gt;
fc32a4a HEAD@{1}: commit: add gitignore file&lt;br /&gt;
d07be0a HEAD@{2}: commit: branch management test&lt;br /&gt;
492be10 HEAD@{3}: merge dev: Merge made by the 'recursive' strategy.&lt;br /&gt;
fc1038b HEAD@{4}: checkout: moving from dev to master&lt;br /&gt;
9d0f76e (dev) HEAD@{5}: commit: write a line on branch dev&lt;br /&gt;
7640602 (eijux/dev) HEAD@{6}: checkout: moving from master to dev&lt;br /&gt;
fc1038b HEAD@{7}: reset: moving to HEAD&lt;br /&gt;
fc1038b HEAD@{8}: commit: branch back to master&lt;br /&gt;
7640602 (eijux/dev) HEAD@{9}: merge dev: Fast-forward&lt;br /&gt;
63fa5ac HEAD@{10}: checkout: moving from dev to master&lt;br /&gt;
7640602 (eijux/dev) HEAD@{11}: commit: add dev branch&lt;br /&gt;
63fa5ac HEAD@{12}: checkout: moving from master to dev&lt;br /&gt;
63fa5ac HEAD@{13}: pull eijux master --allow-unrelated-histories: Merge made by the 'recursive' strategy.&lt;br /&gt;
da60d32 HEAD@{14}: commit: add t5.txt&lt;br /&gt;
e88cb69 HEAD@{15}: commit: delete rmtest.txt&lt;br /&gt;
cc1e40c HEAD@{16}: commit: changed t4 and add t5&lt;br /&gt;
1707196 HEAD@{17}: commit: changed t4&lt;br /&gt;
378fb5a HEAD@{18}: commit: add t4.txt&lt;br /&gt;
e3501ab HEAD@{19}: commit: add t4&lt;br /&gt;
ea463d0 HEAD@{20}: commit: add t2.txt&lt;br /&gt;
92ad079 HEAD@{21}: commit: git commit single file test&lt;br /&gt;
061529e HEAD@{22}: reset: moving to 061529&lt;br /&gt;
69e722f HEAD@{23}: reset: moving to head&lt;br /&gt;
69e722f HEAD@{24}: reset: moving to head^&lt;br /&gt;
061529e HEAD@{25}: reset: moving to 061529&lt;br /&gt;
69e722f HEAD@{26}: reset: moving to 69e722&lt;br /&gt;
061529e HEAD@{27}: commit: git diff test&lt;br /&gt;
69e722f HEAD@{28}: commit: banben test&lt;br /&gt;
fd1fd5f HEAD@{29}: commit (initial): git add test&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Eijux</name></author>
	</entry>
</feed>