Welcome to

快雪Tang

Home / Git

How to change committer name of multiple commits in git?

当一个git repo没有被推向远程服务器时,我们有机会能够改变本地的全部提交者信息。如果你使用多个id分别做不同的工作的话,这个方法或许是有用的。 按照 Stack Overflow 上 How to change the author and committer name and e-mail of multiple commits in Git? 的方法,下面有一个 bash 脚本,你可以命名为 git-apply-xxx.sh 并发到 /usr/local/bin 中去,然后用 BAD_NAME=my-wrong-name NAME=my-right-name EMAIL=my-right-email@xxx git-apply-xxx.sh 来批量修改所有的提交的作者到新的id上面去。 #!/bin/sh git filter-branch –env-filter ” OLD_EMAIL=${BAD_NAME:-your-old-email@example.com} CORRECT_NAME=${NAME:-Your Name} CORRECT_EMAIL=${EMAIL:-your-correct-email@example.com} if [ […]

Read More

gitlab-ce + ci runner meets wildcard ssl cert and unknown authorities

升级到新版gitlab-ce后,所有runner都失效了,于是升级runners后再次register,此时,由于刚刚为gitlab-ce服务器启用了我们的通配符证书(就等8.17出来后的pages功能了),于是runner们都注册不了了: # gitlab-ci-multi-runner register Running in system-mode.                                                                   […]

Read More

Slack webhook integration and gitlab event notifications, bulk enable them

在设置了全局的 Service Templates 之后,有的 webhook 插件并不能自动应用到每个项目,需要你在相应项目的service templates中去添加一次和启用。例如 SlackService 就无法在每个项目有pipeline或tag时发出通知。 为了自动使能这样的 Service Template 到任一项目,需要登录SSH到gitlab服务器,然后直接操作 pgsql 数据库: Chris Schmidt 是这么提供这一hack方案的: Open a shell on the gitlab server, and execute the following command (note, you must be logged in as a user who has […]

Read More

chinese mirror for installing gitlab

还记得去年的安装 、升级gitlab服务器的痛苦。知者自知。 不过才逛gitlab.org才发现其实有专属的镜像安装点了,好感动,特此备注: https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/ 关于这个安装点,官网叫做这样: Chinese GitLab CE mirror hosted by TUNA  

Read More

gitlab-ce 8.16.6 升级/新装的一个bug:Error executing action `run` on resource ‘ruby_block[directory resource: /var/opt/gitlab/git-data]’

这个问题是在新装 gitlab-ce 到 Ubuntu 14.04 上发生的。报错如下: # gitlab-ctl reconfigure Starting Chef Client, version 12.12.15 resolving cookbooks for run list: [“gitlab”] Synchronizing Cookbooks: – package (0.0.0) – runit (0.14.2) – gitlab (0.0.1) Installing Cookbook Gems: Compiling Cookbooks… Recipe: gitlab::default * directory[/etc/gitlab] […]

Read More

git 删除一个远程标签

我们可能会遇到这样的情况,一个标签已经在远程仓库存在了,然而在本地我们必须将这个标签移动到另一个新提交上面,但当我们这样做了之后,移动过的标签却无法被推到远程仓库了。 > 0 (devel u=) $ git push –tags To git@git.github.com:hedzr/devops-op-knife.git ! [rejected] release/v0.5.11 -> release/v0.5.11 (already exists) error: failed to push some refs to ‘git@hedzr.git.22os.com:hedzr/devops-op-knife.git’ hint: Updates were rejected because the tag already exists in the remote. 这时,我们需要首先删除那个远程标签,然后重新推送一次就可以了。 要删除一个远程标签,可以执行命令: […]

Read More