文章目录
git
git config 设置用户名
-
git config --global user.name=zhangsansan
-
git config --global user.email=zhangsansan@iauto.com
git clone 时,项目过大拉不下来:
-
git config --global core.compression 0
-
git clone --depth 1 ssh://zhangsansan@igerrit.storm:repo_xxx
-
进入lib 目录,
-
git fetch –unshallow or git fetch –depth=2147483647
-
git pull --all
代码提交过程
-
git add . //全部
-
git commit -m " commit message"
-
git commit --amend // vim 基本语法: q wq esc,;;ubutu:Ctrl+X ->y->enter
-
git commit --amend --no-edit //修改提交,不改变commit message
如果想改提交的commet,执行git commit –amend,然后直接改名字,再ctrol+x,再y,再回车,再git push xxx
- git commit -c ,eg: chery-pick时,commit失败,手动解决冲突,然后继续commit
-
-
git pull --rebase 确保现在是 : Your branch is up to date with ‘origin/devbook/dev’. commit 后,使用此命令,确保没有冲突 再push
rebase操作可以把本地未push的分叉提交历史整理成直线;rebase的目的是使得我们在查看历史提交的变化时更容易,因为分叉的提交需要三方对比。git pull --rebase
-
git push origin master
- git push origin master
- git push origin [local branch]:refs/for/[origin branch]
- git push origin HEAD:refs/for/[origin branch] <-- 本地没有新建master分支
- refs/for : 简单点说,就是refs/for/mybranch需要经过code review之后才可以提交;refs/heads/mybranch不需要code review。 这个不是git的规则,而是gerrit的规则,
Gitlab 提交代码
1,登录gitlab,基于主仓库fork一个属于自己的仓库,然后clone自己的仓库,进行开发提交
2,增加源仓库: git add remote source git@address
3, 同步分支代码:git pull source master, git push origin master
4,git add、commit、push到自己的分支,要merge到主仓库,需要创建Merge Request
进入自己的仓库—>Merge Request
git cherry pick
- https://blog.csdn.net/wh_19910525/article/details/7554430
- git cherry-pick commitId
- git cherry-pick commitId1…commitId2
- 有冲突的话,手动merge,然后 … git cherry-pick --