我正试图更全面地了解git.
有人可以给我一个简单的逐行解释基本git pull输出的含义吗?例:
remote: Counting objects: 11, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 7 (delta 2), reused 0 (delta 0)
Unpacking objects: 100% (7/7), done.
From ssh://my.remote.host.com/~/git/myproject
* branch master -> FETCH_HEAD
Updating 9d447d2..f74fb21
Fast forward
app/controllers/myproject_controller.rb | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
Run Code Online (Sandbox Code Playgroud)
Cas*_*bel 55
引擎盖下,git pull被git fetch接着git merge.这是获取部分:
remote: Counting objects: 11, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 7 (delta 2), reused 0 (delta 0)
Run Code Online (Sandbox Code Playgroud)
此时,您已告诉遥控器您想要什么.它找到了它需要给你的所有对象(我相信在这个过程中计算它们),压缩它们以便通过网络更快地传输,然后报告它发送给你的内容.对象可以是blob,树,提交或标签 - 有关详细信息,请参阅git book.
Unpacking objects: 100% (7/7), done.
Run Code Online (Sandbox Code Playgroud)
您收到包(压缩对象集)并解压缩.
From ssh://my.remote.host.com/~/git/myproject
* branch master -> FETCH_HEAD
Run Code Online (Sandbox Code Playgroud)
你从给定的遥控器中取出了分支'master'; ref FETCH_HEAD现在指向它.现在我们继续进行合并 - 确切地说,git会将FETCH_HEAD(远程主分支)合并到您当前的分支(可能是主分支).
Updating 9d447d2..f74fb21
Fast forward
Run Code Online (Sandbox Code Playgroud)
事实证明,你没有偏离遥控器的主分支,所以合并是一个快进(一个简单的合并,它只是让你在历史中前进).Git注意到你的主分支(9d447d2)的原始位置和它被快速转发到的新位置(f74fb21).如果你偏离了遥控器的主分支,你会在这里看到递归合并的输出 - Merge made by recursive可能还有一些Auto-merged <file>和(哦不!)合并冲突!
app/controllers/myproject_controller.rb | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
Run Code Online (Sandbox Code Playgroud)
最后,它显示了主分支的原始位置和合并后位置之间的差异; 这基本上就是你得到的git diff --stat master@{1} master.
| 归档时间: |
|
| 查看次数: |
7372 次 |
| 最近记录: |