V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
asdf33
V2EX  ›  git

windows 下 git 提交时,有什么办法可以执行一个命令呢?

  •  
  •   asdf33 · 2015-05-27 11:46:06 +08:00 · 2924 次点击
    这是一个创建于 3461 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在windows下想做git提交代码时执行一个命令做代码检查,在小乌龟上写钩子是可以做到的,但有些同事可能会用Git Bash来提交,想问一下这个时候应该如何做呢。在服务端做hook的话,先不考虑了。大家有没有好想法呢。

    6 条回复    2015-06-09 17:30:19 +08:00
    neoblackcap
        1
    neoblackcap  
       2015-05-27 12:01:12 +08:00
    这个hook不就是个脚本吗?你放在.git/hook目录里面,命名正确不就可以了?
    exch4nge
        2
    exch4nge  
       2015-05-27 12:03:12 +08:00
    具体我没做过,倒是搜到了一些资料。
    git的hook分Client-Side跟Server-Side,按你说的需求估计就是想要Client-Side Hook吧。下面是个搜到的示例
    https://git-scm.com/book/es/v2/ch00/_an_example_git_enforced_policy
    asdf33
        3
    asdf33  
    OP
       2015-05-27 12:17:18 +08:00
    @neoblackcap 我看过里面的hook,是shell脚本,windows不支持吧。
    neoblackcap
        4
    neoblackcap  
       2015-05-27 12:34:48 +08:00
    @asdf33 我觉得不一定要是shell脚本,哪些hook只要是能执行就可以了不管你是用python,ruby,lua还是C++写应该都是可以的,但是一定要是可执行的,同理我觉得windows下面你可以放个exe进去试试,或者powershell
    FrankFang128
        5
    FrankFang128  
       2015-05-27 12:35:26 +08:00
    windows 不行。要用 cgwin 吧
    asdf33
        6
    asdf33  
    OP
       2015-06-09 17:30:19 +08:00
    哎,我终于找到办法了,把.git/pre-commit.sample 文件改名为.git/pre-commit,里面可以写shell,也可以是node。我是写node的,果断把第一句写成 #!/node,然后就可以自由的玩耍了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   760 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 58ms · UTC 22:00 · PVG 06:00 · LAX 14:00 · JFK 17:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.