Linux分支代码必须公开吗,linux – 当拉出不同的分支时,让“git pull”请求确认...

现在,我将重点介绍如何在执行任何拉动之前提示用户进行确认.

不幸的是,因为没有预拉hook这样的东西,我认为你不能得到实际的pull命令来直接为你做这个.在我看来,你有两个选择:

1 – 使用fetch然后合并(而不是pull)

而不是运行git pull,运行git fetch,然后git merge或git rebase;分解拉入它自然组成的两个步骤会迫使你仔细检查你将要合并/重组的内容.

2 – 定义一个在拉动之前要求确认的别名

定义并使用pull wrapper(作为Git别名),如果您尝试从名称与当前本地分支不同的远程分支中提取,则会提示您进行确认.

将以下行写入〜/ bin /中名为git-cpull.sh的脚本文件(用于确认,然后拉):

#!/bin/sh

# git-cpull.sh

if [ "$2" != "$(git symbolic-ref --short HEAD)" ]

then

while true; do

read -p "Are you sure about this pull?" yn

case "$yn" in

[Yy]*)

git pull $@;

break

;;

[Nn]*)

exit

;;

*)

printf %s\\n "Please answer yes or no."

esac

done

else

git pull $@

fi

然后定义别名:

git config --global alias.cpull '!sh git-cpull.sh'

之后,例如,如果您运行

git cpull origin master

但是当前分支不是主分支,在实际执行任何牵引之前,系统会要求您确认.

$git branch

* master

$git cpull origin foobar

Are you sure about this pull?n

$git cpull origin master

From https://github.com/git/git

* branch master -> FETCH_HEAD

Already up-to-date.


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部