git 按时间打印所有成员代码提交: git log --since ==2018-01-01 --until=2018-12-31 --format='%aN' | sort -u | while read name; do echo -en "$name\t"; git log --author="$name" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 + $2 }…
很久没有写博客了,最近遇到了一个git问题,比较典型,记录下来与大家分享. 我们使用git版本控制的时候享受了很多便利,不管是代码合并,分支提供给我们的并发,但我们也往往忽略了每次提交之后在我们本地项目根目录下.git文件夹里面的存储变化.我遇到的git"臃肿"问题就是因为在提交的时候把较大文本加入版本控制,在其他人拉取更新反推远程分支的时候,每一次都会加剧.git下面的objects的文件夹大小,最终的结果就是再也无法顺利从远程pull,也无法顺利clone该项目. 关于.git的产…
前言   公司的代码都存放在自己搭建的gitlab上面.之前由于老板升级gitlab.导致下面有个叫做"api"的groups无法访问.通过无所不能的谷歌才知道.在gitlab在某个版本已经把api作为关键词.导致我们改groups下面的所有程序无法进行正常的pull和push.后来通过修改了groups名称才得以恢复.但是我们该groups下面有很多的微服务.因为git仓库地址发生改变,我们只有手动的修改指向.无限git remote rm xxx,gitremote add xxx…
  gitbase 是一个基于golang 开发的开源git 仓库sql 接口查询引擎,基于此工具,我们可以方便的分析git 仓库代码的情况 而且可以基于源码的分析,还是很强大的 安装 直接使用编译的二进制文件即可 https://github.com/src-d/gitbase/releases 配置 我使用mac 系统,参考mac 系统的配置添加path 即可 准备git 代码 顺便创建几个,或者clone github 开源项目 使用 启动gitbase gitbase server -v…
1.首先要在本地安装一个git安装包,比如安装完之后路径是在      D:\Program Files (x86)\Git\bin\git.exe 2.访问git网址  https://gitee.com/,先进行注册后,再登录(可以注册个人也可以注册企业的) 3.git无论个人还是企业登录之后,先新建仓库: 3.1 个人: 3.1.1右上角的“+”,点击之后点击新建仓库 3.1.2 在新增仓库页面填写基本信息:仓库名称.可以填写下仓库的介绍.私有(私有只有添加过的成员才可以用)或公有.选择语…
此文已由作者张磊授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 前言 git 拆分仓库在网上已有的案例上来看,分为 submodule 和 subtree. 还有基于这两个方案进行改进的 subrepo.git-repo 等,当然还可以使用 npm 去管理. 准备工作 可以先阅读之前的 submodule . subtree 以及 subrepo 的文章 git-repo 可以阅读 https://code.google.com/archive/p/git-repo/…
摘要:本文介绍了笔者多个本地工作节点(地方)的多台电脑(PC/笔记本电脑)同步源码到2个远端的GIT(一个GITHUB国外强制公开,一个oschina国内可不公开). 作者:太初 转载说明:请指明原作者,连接,及出处. 正文 大多数IT工作者,或者直接点程序员,总是上网查资料,往往会提2种问题: A.自己有个想法X,查看网上是否有类似经验的人,告知这条路,这个方法是否走得通?X是否可行?(期望得到答案,少走弯路,怕浪费精力) B.确认想法X或方法可行,但苦于不知道细节,只能查网络资料,比如到博客…
一 代码推送到远程git仓库 1.在git中建立一个下项目(假设项目名称为->Mygit) 2.在xocde上新建一个测试项目(假设项目名称为GitTest) 3.打开电脑终端: 1)首先利用终端命令进入xcode新建的测试项目(GitTest)的目录中 2) echo "# Mygit" >>README.md  回车 3) git init 回车 4) git add READEM.md 回车 5) git commit -m "commit init&…
svn迁移到git仓库并保留commit历史记录 最近在做svn迁移到gitlab,由于之前一直是由svn做版本控制.最简单的方式是将svn的内容export出来,然后添加到gitlab即可.但是,如果svn用的时间很长了,而且很多commit,我们希望保存svn commit的信息以便做版本的控制和比较.幸好git提供了相应的解决办法. 前提 已安装git 已安装gitlab 迁移 1.环境准备: yum install -y git-svn 2.svn账号与git账号映射,users.txt…
虽然 Git 确实是被许多重要软件选作版本控制工具,但是并不是仅能用于这些重要软件;它也能管理你购物清单(如果它们对你来说很重要的话,当然可以了!).你的配置文件.周报或日记.项目进展日志.甚至源代码! 使用 Git 是很有必要的,毕竟,你肯定有过因为一个备份文件不能够辨认出版本信息而抓狂的时候. Git 无法帮助你,除非你开始使用它,而现在就是开始学习和使用它的最好时机.或者,用 Git 的话来说,“没有其他的 push 能像 origin HEAD 一样有帮助了”(千里之行始于足下的意思).…