为有牺牲多壮志,敢教日月换新天。

Gerrit: missing Change-Id in commit message footer

热烈欢迎,请直接点击!!!

进入博主App Store主页,下载使用各个作品!!!

注:博主将坚持每月上线一个新app!!!

git出现:

remote: Resolving deltas: 100% (27/27)
remote: Processing changes: refs: 1, done    
remote: ERROR: [ddcd70c] missing Change-Id in commit message footer
remote: 
remote: Hint: To automatically insert Change-Id, install the hook:
remote:   gitdir=$(git rev-parse --git-dir); scp -p -P 29418 [yourName]@smartgit:hooks/commit-msg ${gitdir}/hooks/
remote: And then amend the commit:
remote:   git commit --amend

按照提示,执行:

gitdir=$(git rev-parse --git-dir);

继续执行:

scp -p -P 29418 [yourName]@smartgit:hooks/commit-msg ${gitdir}/hooks/

出现问题:

subsystem request failed on channel 0
scp: Connection closed

将提示方法中的scp -p改为scp -O:

scp -O -P 29418 [yourName]@smartgit:hooks/commit-msg ${gitdir}/hooks/

解释:尝试对 scp 使用 -O 选项。 这在我使用 9.0p1 的情况下解决了同样的问题。 它强制使用旧版 SCP 协议进行文件传输,而不是 SFTP 协议。 对于未实现 SFTP 的服务器,可能需要使用 SCP 协议,以实现特定文件名通配符模式的向后兼容性,以及为较旧的 SFTP 服务器扩展带有“~”前缀的路径。

按照提示执行:

git commit --amend

输入【:wq】,退出编辑。最后重新推送:

git push origin HEAD:refs/for/...

【git提交格式】:

git push <remote 名字> <本地分支的名字> : <远程库的名字>

git push :表示推送代码到远程服务器。

origin : 表示远程的库的名字。

master:表示远程分支的名字。

HEAD: 表示一个特别的指针,指向你正在工作的本地分支的指针,可以当做是本地分支的别名。git通过它可以知道当前工作区间在哪个分支。

refs/for:提交代码到服务器后,需要经过code review之后才能Merge.

refs/heads:不需要经过code review,直接Merge.

posted @ 2022-12-06 16:01  为敢技术  阅读(369)  评论(0编辑  收藏  举报