git:在refspecs中使用远程引用推送
有人能给我解释一下(或者给我一个好的推荐人)下面的问题吗 我知道以下是我必须使用的正确推送命令:git:在refspecs中使用远程引用推送,git,Git,有人能给我解释一下(或者给我一个好的推荐人)下面的问题吗 我知道以下是我必须使用的正确推送命令: git push origin refs/heads/master:refs/heads/master (I also know that it has short forms, like: git push origin master:master or git push origin master) 然而,有一次,我(错误地)推了两下:
git push origin refs/heads/master:refs/heads/master
(I also know that it has short forms, like:
git push origin master:master
or
git push origin master)
然而,有一次,我(错误地)推了两下:
git报告两个命令中都没有错误,尽管在(1)中,我没有远程名称“heads”
- 我的第一个问题是:在这些情况下,git向远程存储库推送了什么?它们会伤害我的远程存储库吗
- 第二个问题是:“refs/remotes”下的所有内容都是远程引用 它们要知道最后一次服务器提交时对应远程分支上的最后一个提交ID。就为了这个吗 (例如,仅供参考),是否有git命令使用这些引用
- 备份远程存储库
- 做第(2)项
- 比较两个存储库(当前存储库和备份存储库)
- 在“objects”文件夹中,创建了两个新文件:一个是.pack文件,另一个是.idx文件
- 在“refs”文件夹中,创建了一个新的refs“remotes/Originates/master”
- 将远程repo克隆为2个本地repo
- 在一个本地repo中,我对文件commit、push(git-push-originmaster)进行了更改
- 在另一个本地回购协议中
- 我对文件进行了更改,提交
- 推动
git推送源主机:主机
我从git收到一条错误消息:
这就是我所期望的“…![拒绝]master->master(非快进)…”
- 然后我用命令(2)推了一下,结果就是我前面提到的
的含义是什么?命令(2)在中创建新的“参照”
远程存储,它指的是什么
(2)推送与git推送原始主机非常相似。不过我不太清楚
如“”中所述,refs/remotes
命名空间if用于跟踪分支:即表示“上次更新远程跟踪分支时远程存储库中分支的状态”。
这些引用由git fetch使用,以了解要获取的提交内容(与回购协议中已有的内容相比)
有关更多信息,请参阅SO contributor撰写的博客文章“”
(2)推送与git推送原始主机非常相似。不过我不太清楚
如“”中所述,refs/remotes
命名空间if用于跟踪分支:即表示“上次更新远程跟踪分支时远程存储库中分支的状态”。
这些引用由git fetch使用,以了解要获取的提交内容(与回购协议中已有的内容相比)
有关更多信息,请参阅SO contributor撰写的博客文章“”
谢谢,回到我的第一个问题,我发现(2)做了一些不同的事情,我用关于它的发现更新了我的问题+1关于“远程跟踪”的参考谢谢,回到我的第一个问题,我发现(2)做了一些不同的事情,我用关于它的发现更新了我的问题+1供“远程跟踪”参考
(1) git push origin refs/heads/master:refs/remotes/heads/master
(2) git push origin refs/heads/master:refs/remotes/origin/master
Counting objects: 842, done.
Compressing objects: 100% (337/337), done.
Writing objects: 100% (651/651), 336.30 KiB, done.
Total 651 (delta 243), reused 612 (delta 218)
To file:///data/resto/central-repo
* [new branch] master -> origin/master