0

我什至不确定这是否可能,但是在对 git 进行了一些研究之后,我真的无法弄清楚要这样做,所以我想为什么不使用 stackoverflow?

假设我有 shell 脚本,或者更具体地说,我有以下命令,一旦用户从 git 结帐,我想执行这些命令:

"MachineName":~/MyStuff/SpecificFolder# find myfolder -type f
-print0 | xargs -0 chmod 664

我的目标是将它作为一个 shell 脚本,以便在结帐后执行。我知道 git 维护文件权限,但是当您切换分支时,我最终看到了一些奇怪的行为。所以我想创建一个shell脚本,文件权限始终保持不变。

4

2 回答 2

2

Git 自带对钩子的支持

您可以添加一个提交后挂钩脚本来执行您希望它执行的操作。

将您的脚本添加post-checkout到 .git/hooks。

于 2013-09-17T15:50:50.247 回答
1

为它创建一个git ckeckout执行其他操作的函数怎么样?

git_checkout ()
{
    git checkout $1
    find myfolder -type f -print0 | xargs -0 chmod 664
}

如果您将其存储在您的 中~/.bashrc,那么无论何时您想要结帐,您都可以执行git_checkout <new_branch>这两个操作。

于 2013-09-17T16:01:07.173 回答