Git
I__Love__China
这个作者很懒,什么都没留下…
展开
-
【FAQ】如何查找 git 某次 commit 中是否包含字符串 abc?
git log --pretty=format:"%h %an %s" | grep "abc"原创 2015-09-30 17:21:54 · 8486 阅读 · 0 评论 -
【FAQ】git merge 后 push 到 Gerrit 失败,提示 no new changes ?
需求:git 分支合并问题:使用 git merge 在本地执行分支合并操作,然后想 push 到 gerrit 上评审入库,可是在提交时,提示: ! [remote rejected] HEAD -> refs/for/dev (no new changes)分析:no new changes 的意思,是说,这个合并,是个线性的合并。 而合并的那些历原创 2016-07-20 09:44:48 · 25781 阅读 · 3 评论 -
【指导】git 日志长度、日志开头、tag 命名的 hook 部署(gerrit ref-update)
如题,需要对git上库的commit message的格式做要求,要求长度不小于15,开头必须是以XX开头。方案:新增gerrit ref-update hook在review_site/hooks目录中新增ref-update文件即可(如下):需要注意的时候,bash和dash的语法不一样,注意所在服务器使用的情况:#!/bin/sh## This hook script i原创 2015-12-06 14:40:14 · 11239 阅读 · 0 评论 -
【FAQ】如何查看 git tag 的提交时间?
如下,首先取到 tag 的时间戳,然后转换成我想要的格式:TAG_DATE=`git log -1 --format=%ct $TAG`SUFFIX=`date -d @$TAG_DATE +%Y%m%d%H%M%S`原创 2016-02-22 16:22:07 · 16471 阅读 · 1 评论 -
【FAQ】如何检出git仓中最新的tag的代码(不知道tag名的情况)?
# Get new tags from remotegit fetch --tags# Get latest tag nameLatestTag=$(git describe --tags `git rev-list --tags --max-count=1`)# Checkout latest taggit checkout $LatestTag原创 2016-01-25 16:24:46 · 12420 阅读 · 0 评论 -
【指导】iOS代码静态检查 -- clang format (+ git pre-commit hook + jenkins)
Xcode IDE中可以安装Clang format插件,格式化iOS代码。可总是有人会忘,故再加上Git客户端pre-commit hook一枚用于防呆,在执行git commit命令后检查,检查通过后正常完成commit:)可是有些人懒得连hook都不配,所以再加上Jenkins验证,竟然不改就想上库?哼╭(╯^╰)╮,打回去重来~~~~如下,Git hook采用全局hook的原创 2015-10-30 14:52:36 · 11452 阅读 · 0 评论 -
【FAQ】如何在新打git tag入库后自动触发Jenkins任务?
原理:使用jenkins的poll scm机制(https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin)jenkins配置:1,源码管理(Git):Refspec:+refs/tags/*:refs/remotes/origin/tags/*Branch Specifier (blank for 'any'):*原创 2015-12-30 17:34:18 · 17320 阅读 · 0 评论 -
【FAQ】如何部署全局git commit-msg hook,不用每个仓克隆了再去一次次拷贝?
问题:git和gerrit对接,git commit的时候都提示“missing Change-Id in commit message footer”。知道是因为change-id搞的鬼,也知道从gerrit上或者其他地方拷个commit-msg脚本儿,放到.git/hooks目录下就完事儿了。但是,每次重新克隆时,就有得再来一遍拷贝动作,很低效。注:单仓拷贝,不用repo。原创 2015-10-09 16:30:22 · 14525 阅读 · 3 评论 -
【指导】从源码编译安装Git-Ubuntu
1 下载源码包官网:https://git-scm.com/源码包:https://www.kernel.org/pub/software/scm/git/,取最新的包下即可。2 编译安装Git1)安装编译源码包的工具:$sudo apt-get installlibcurl4-gnutls-dev libexpat1-dev gettext libz-dev libs原创 2015-11-04 11:02:45 · 10451 阅读 · 0 评论 -
【FAQ】如何根据commit id找到对应节点所属的分支和标签?
git branch --contains commitgit tag --contains commit原创 2015-09-30 17:27:17 · 13064 阅读 · 0 评论 -
【FAQ】如何查找最近几分钟内特定仓特定分支的 gerrit change 并下载编译?
对于多模块互相关联项目,有时需要同时修改多个 git 仓库的代码并上库,CI 也需要同时取到这些提交方可编译。那么问题来了,如何取到这些 gerrit change?jenkins 的 gerrit trigger 插件,一次只能下载一个gerrit change 并编译,设想可以使用 pipe line 的方式实现(待验证)。如下是简单的命令行查找法:1,使用 gerrit quer原创 2016-09-08 10:48:18 · 10306 阅读 · 0 评论