git 使用

下载和提交代码:

===========================

 

git clone URL

git fetch --all && git reset --hard origin/master

git checkout master  

# 项目开发使用 git checkout -b master origin

git pull

git checkout dev (first :git checkout -b dev )        

git merge master

git status

git add utils4IP.sh 

git commit ----通过eclipse 提交

git push origin dev:feature/dev

git push origin dev:feature/dev

----通过 bitbucket 进行 pull request

===========================

举例:

Git clone只能clone远程库的master分支,无法clone所有分支,解决办法如下:

1. 找一个干净目录,假设是git_work
2. cd git_work
3. git clone http://myrepo.xxx.com/project/git_work.git ,这样在git_work目录下得到一个project子目录
4. cd project
5. git branch -a,列出所有分支名称如下:
remotes/origin/dev
remotes/origin/release
6. git checkout -b dev origin/dev,作用是checkout远程的dev分支,在本地起名为dev分支,并切换到本地的dev分支
7. git checkout -b release origin/release,作用参见上一步解释
8. git checkout dev,切换回dev分支,并开始开发。

===========================

git 统计插件:Awesome Graphs for Stash  http://www.360doc.com/content/14/0929/11/10058718_413198911.shtml

===========================

git 代码分析统计:

代码分析人员提交名单:git log --pretty='%aN' | sort -u | wc -l

$ 

$ git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

http://blog.sina.com.cn/s/blog_7bbae8bd0102vv8p.html

http://blog.csdn.net/jspamd/article/details/51908456

 

$ git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

$ git log --pretty=format:%ae | awk -- '{ ++c[$0]; } END { for(cc in c) printf "%5d %s\n",c[cc],cc; }' | sort -u -n -r | head -n 5

 

$ git log --author="$(git config --get user.name)" --pretty=tformat: --numstat | gawk '{ add += $1 ; subs += $2 ; loc += $1 - $2 } END { printf "added lines: %s removed lines : %s total lines: %s\n",add,subs,loc }' -

--shortstat

 

$ git log --author="wangguoqing@nationsky.com" --pretty=tformat: --numstat --since ==2016-01-01 --until=2017-01-01 | awk '{ add += $1 ; subs += $2 ; loc += $1 + $2 } END { printf "added lines: %s removed lines : %s total lines: %s\n",add,subs,loc }' -    

$ git log --author="wangguoqing@nationsky.com" --pretty=tformat: --numstat --since ==2017-05-10 --until=2017-05-15 | awk '{ add += $1 ; subs += $2 ; loc += $1 + $2 } END { printf "added lines: %s removed lines : %s total lines: %s\n",add,subs,loc }' -

 

 

如果要查看 Git 仓库中,2008 年 10 月期间,Junio Hamano 提交的但未合并的测试脚本(位于项目的 t/ 目录下的文件),可以用下面的查询命令:

$ git log --pretty="%h - %s" --author=gitster --since="2008-10-01" \
   --before="2008-11-01" --no-merges -- t/
 
 
$ git log --pretty="%h - %s" --since="2017-05-01" \ --before="2017-05-15" --no-merges -- t/
 

$ git diff --numstat | awk '{if ($1 == "0" && $2 == "0") print $3}'  | xargs git checkout HEAD 只回滚文件的 mode 但不影响内容

 

 

git log --author= "leizhenhua"

shortshat

oneline

文件强制保存: w !sudo tee %

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值