相关疑难解决方法(0)

这些`git fetch`语法有什么区别?

我已经克隆了一个存储库(git clone --bare)并且显然git fetch没有更新它,但git fetch origin master:master确实如此.我不明白这些语法之间的所有细微差别:

  • git fetch
  • git fetch origin
  • git fetch origin master
  • git fetch origin master:master

origin是我唯一的远程,master是我唯一的分支,帮助说:

如果未指定远程,则默认情况下将使用原始远程

那么为什么这四条线不一样呢?

编辑:三个第一个命令似乎在一个名为的临时分支中获取FEATCH_HEAD.但由于我使用裸克隆,我无法使用git merge获取结果.

编辑2:从@ torek的回答中,我做了一个小测试并且差异了--bare和--mirror克隆目录.结果如下:

diff -ru mesa.bare.git/config mesa.mirror.git/config
--- mesa.bare.git/config    2014-10-14 20:01:42.812226509 -0400
+++ mesa.mirror.git/config  2014-10-14 20:00:53.994985222 -0400
@@ -4,3 +4,5 @@
    bare = true
 [remote "origin"]
    url = git://anongit.freedesktop.org/mesa/mesa
+   fetch = +refs/*:refs/*
+   mirror = true
Only in mesa.bare.git/objects/pack: pack-17005b7e1020d291eb86d778a174ecf0d60d92a9.idx …
Run Code Online (Sandbox Code Playgroud)

git syntax fetch

5
推荐指数
1
解决办法
1823
查看次数

git fetch和git fetch origin master之间的差异

正在进行获取/合并,并想知道做之间是否有任何区别

git fetch
Run Code Online (Sandbox Code Playgroud)

git fetch origin master
Run Code Online (Sandbox Code Playgroud)

remote repository在GitHub上没有任何其他分支和原点.

当我做:

git fetch origin master
remote: Counting objects: 4, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 1), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From github.com:XXXXXXXXXXXXXXX
 * branch            master     -> FETCH_HEAD
Run Code Online (Sandbox Code Playgroud)

只是:

git fetch
From github.com:XXXXXXXXXXXXXXX
   531d466..aaf6df0  master     -> origin/master
Run Code Online (Sandbox Code Playgroud)

请注意,主人指向不同的东西; 在一个案例FETCH_HEAD和其他情况下,origin/master?他们不一样吗?

git git-merge git-fetch

1
推荐指数
1
解决办法
1851
查看次数

标签 统计

git ×2

fetch ×1

git-fetch ×1

git-merge ×1

syntax ×1