博文

目前显示的是 四月, 2018的博文

一个repo关联多个git

    其实挺简单的,网上说的改什么.git/config文件并不准确,还挺有误导性的。过程简单如下。怎么装git就不说了。     使用多个git账号的关键是需要让git的ssh认证能同时支持多个git。我们知道git认证是通过.ssh/id_rsa密钥来进行的。而如果同时用多个git,那么必然需要生成多个密钥对。所以生成密钥的时候,不能都用默认的密钥对的名字id_rsa,需要加以区分,比如加后缀名: # ssh-keygen -t rsa -C "your_email@youremail.com"     我们一般是一路回车按到底,但对于多个git,在屏幕回显生成密钥对文件名时,需要自定义一下,否则都用默认的id_rsa,那么后面的就会覆盖掉前面的 >Generating public/private rsa key pair. Enter file in which to save the key  (/Users/your_user_directory/.ssh/id_rsa):<press enter>     这里不要用默认的文件名,自定义一个新的文件名,比如输入 /Users/your_user_directory/.ssh/id_rsa _github     后面的可以一路回车按到底     同理,下一个git需要生成密钥对的时候,也在这里改一下默认文件名,比如 /Users/your_user_directory/.ssh/id_rsa _company     但是这样有个问题,回头做push/pull的时候,因为git默认是去找.ssh/id_rsa,所以找不到id_rsa会报认证失败。所以还必须让git知道哪个git应该用哪个密钥。还是在.ssh目录下,有个config文件,编辑此文件,有几个git就加几个section。注意是改./ssh下的config,不是像很多网上文章说的那样改.git下的config。config的例子: Host company   HostName git.company.com ...

利用Gitlab的Jira issue tracker实现Jira issue自动根据Gitlab commit/merge更新状态

图片
  首先一个参考文档: http://git.jd.com/help/user/project/integrations/jira   其次此文档中与我的jira版本和gitlab版本实际差异还是较大,记一下趟过的坑吧: 1. jira上的配置:   我用的是jira7.3.8,配置用户组权限处和上文不一样,设置group权限是从管理->系统->安全->全局权限进去设置,而且没有显示有jira-core的,于是将gitlab-developers设成了[JIRA 管理员]的权限 2. Gitlab上的配置:    1) Gitlab配置需有repo的master权限    2) 配置的时候从integration进去,是点击Jira转进link,而不是点前面的电源开关的符号,本废在这上面竟然被block了一下-_-b    3) JIRA API URL直接填与上面的Web URL一样就行    4) Transition ID这个解释起来比较复杂。首先,用上文的方法去取,我得到的是这样的输出: $  curl -s http://gitlab:gitlab@cloudjira.jd.com/rest/api/2/issue/TEST-3/transitions { "expand":"transitions", "transitions": [ {"id":"191", "name":"on-going", "to": {"self":"http://cloudjira.jd.com/rest/api/2/status/10301", "description":"", "iconUrl":"http://cloudjira.jd.com/images/icons/statuses/generic.png", "name":"Develope...