Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git:如何将git notes添加的消息推送到中央git服务器?_Git - Fatal编程技术网

git:如何将git notes添加的消息推送到中央git服务器?

git:如何将git notes添加的消息推送到中央git服务器?,git,Git,似乎没有关于git notes的适当文档。我已经使用git notes add命令向其中一个commit添加了一些注释。但是当我按下提交按钮,然后进行单独的克隆时,我看不到提示消息。有没有办法推送通过git notes命令添加的所有便笺消息?根据,您可以使用 git push <remote> refs/notes/* @来自man git pull的用户2663585:“git pull-从另一个存储库或分支获取并与之合并”git pull同时执行git fetch和git me

似乎没有关于git notes的适当文档。我已经使用git notes add命令向其中一个commit添加了一些注释。但是当我按下提交按钮,然后进行单独的克隆时,我看不到提示消息。有没有办法推送通过git notes命令添加的所有便笺消息?

根据,您可以使用

git push <remote> refs/notes/*

@来自
man git pull
的用户2663585:“git pull-从另一个存储库或分支获取并与之合并”
git pull
同时执行
git fetch
git merge
,因此,如果您从中提取的远程设备有提交,您将执行一次合并(这将进行新的提交)。为了避免这种情况,如果要检查要合并的内容(而不是一次完成),可以运行
git fetch
,然后自己运行
git merge
。@user2663585:是的,注释是提交的,但不在它们指向的分支上。问题是,
git pull origin blah
意味着将
blah
合并到当前分支中,即使blah是
refs/notes/commits
。因此,您将注释合并到主分支中,而不是将它们保留在它们所属的一侧。使此功能在某种程度上“起作用”的唯一方法是将它们放在refs/notes内的另一个“名称空间”(顺便说一句,这些名称空间是在哪里定义的?)中,例如在refs/notes/origin/(否则,
git notes merge
不会做任何事情-甚至不会出错)。因此,使用
git-fetch-origin-refs/notes/*:refs/notes/origin/*
,然后将它们与本地注释合并。若要在拉取时始终获取注释,可以将
fetch=+refs/notes/*:refs/notes/*
添加到git配置中的“远程原点”部分。若要始终推送注释,请将
push=+refs/notes/*
添加到远程原点Git配置中的。
git fetch origin refs/notes/*:refs/notes/*