分享 聊聊 Gitlab 的钩子问题

yutian · 2014年04月25日 · 最后由 ensonmj 回复于 2014年04月25日 · 12170 次阅读

项目频繁需要提交部署到测试机器上,因此想实现类似 Heroku 平台上的提交代码实现部署,因此接触了 Git 里面的钩子 hook,并对钩子进行了解。项目采用 Gitlab 管理代码,因此到服务器上对项目路径下的 hooks post-receive 脚本做了修改,终于实现了自动部署。但是,新的问题产生了: Gitlab 上每一个项目 push 的时候,我们的项目都会实现部署,太令人 amazing 了!! 于是又回到 Gitlab 服务器去查看钩子里面的内容。当用 ls -al 查看 hooks 下的内容时候,谜底突然揭开: Gilab 上所有项目库下的 hooks post-receive 都链接到 gitlab-shell/hooks/post-receive 这个脚本上,取消自己项目里钩子到 gitlab-shell 下的链接 link 把部署的脚本单独写到自己项目的 post-receive,问题终于解决。 问题原因:shell 到 server 后,终端不支持彩色高亮显示,全部是白色显示,无法分清楚文件、目录和链接,对 bashrc 做下修改即可。 具体为啥让所有项目的 hooks 都链接到同一个文件,这个就不去揣测了

附 bashrc 内容:

alias ls='ls --color=auto' alias grep='grep --color=auto'

#export PS1='/h:/w/$ ' umask 022

You may uncomment the following lines if you want `ls' to be colorized:

export LS_OPTIONS='--color=auto' eval "dircolors" alias ls='ls $LS_OPTIONS' alias ll='ls $LS_OPTIONS -l' alias l='ls $LS_OPTIONS -lA'

太令人 amazing 了

怎么感觉读不通啊

#1 楼 @bhuztez 哈哈 这个不是重点

最後的 ls 有點繁瑣了,第一個指定--color=auto 之後,後面的就不需要了

需要 登录 后方可回复, 如果你还没有账号请 注册新账号