我可以禁用git pull吗?

时间:2014-04-08 17:29:27

标签: git

有没有办法禁用git pull

我想让它不起作用或不做任何事情,所以,当错误地输入它时,它不会给我带来麻烦。

4 个答案:

答案 0 :(得分:7)

由于您使用的是OSX,因此可以编写一个函数来检查是否输入了git pull。

如果是这样,它将打印一条消息,否则它将使用参数调用git。

示例:

git() { if [[ $@ == "pull" ]]; then command echo "Cannot pull!"; else command git "$@"; fi; }

答案 1 :(得分:2)

另一种方式,如果你有root权限,那就是:

$ sudo chmod 000 /usr/lib/git-core/git-pull

...或文件在FS中的任何位置。然后:

$ git pull
fatal: cannot exec 'git-pull': Permission denied
$

或者,您可以将其替换为

的内容
#!/bin/sh
echo "git-pull is disabled"
exit 1

答案 2 :(得分:1)

在git中不可能直接使用,因为不允许git别名覆盖内置命令。

但是,您可以创建一个bash函数和别名代理您的git命令并修改它。 Steve Bennett gives a great example in this answer.

答案 3 :(得分:1)

我猜你引用的问题是如果你的本地分支偏离远程可能会发生的合并冲突。在这种情况下,请尝试在git config中设置pull.ff选项,如下所示:

[pull]
    ff = only

这将告诉git只进行快进合并,保证不会导致冲突。