1.常用
config
git config –global user.name “Your Name”
git config –global user.email “email@example.com”
init
初始化git
clone
下载项目
status
查看状态
checkout
创建分支
git checkout -b branch1
切换分支
git checkout branch2
pull
git pull
git fetch + git merge
push
推送/创建远程分支
git push -u origin branch1
删除远程分支
git push origin –delete branch1
git push origin :branch1
推送分支
推送branch本地更新到release远程分支上,在推送之前,需要git pull origin release,在branch本地分支拉取release远程更新。
注意:就目前我们的代码和分支管理,不太推荐在release和master_pre上使用,因为我们的个人分支都是基于master的
git push origin branch1:release
add
修改&删除(update)
git add -u
更新&新增&删除
git add -A
git add .
commit
正常提交
git commit -m ‘message’
合并上一个提交
git commit –amend
可以修改commit message,且git图形化界面上只能看到最新的一次commit信息
merge
git merge branch1
把branch1合并到当前分支
log
打印信息
git log
git log –oneline
git log –pretty=oneline
git log –graph –pretty=oneline –abbrev-commit
比较分支commit信息
当我们忘记自己分支上的代码是不是已经合到master,或者想看一下有没有合到master的commit时,就很好用了
git log branch1 ^master
reflog
所有git操作的记录者
git reflog
2.stash
适用于:你临时接bug,需要放下手上的工作,切换分支做其他的场景,这时你把它们stash起来,改好临时bug就可以回来继续了。
标签:你的秘密小仓库
查看暂存区信息
git stash list
暂存
git stash
git stash save ‘message’
取出暂存
git stash pop
git stash apply stash@{0}
删除暂存
git stash drop stash@{0}
git stash clear
查看暂存
git stash show stash@{0}
修改哪个文件
git stash show stash@{0} -p
修改了的内容
恢复stash误删
step1:git fsck –lost-found
step2: git show
step3: git merge
3.rebase
适用于:一个功能有n个commit提交的时候。看着n多个无用commit就让人很难受,不仅不利于review代码,版本上线有问题,还不好排查。(所以说rebase是代码提交规范的小能手,也是强迫症的福音)
标签:强迫症福音
注意:rebase是一个危险的命令,如果在共同开发的分支上使用,会导致丢失提交记录。
建议:在只有自己开发的分支上操作
看一下这篇文章,你会学到更多:http://jartto.wang/2018/07/08/git-commit/(代码规范,commit)
git rebase -i [commitID]
进入vi编辑模式
有几个命令需要注意一下:
p, pick = use commit
r, reword = use commit, but edit the commit message
e, edit = use commit, but stop for amending
s, squash = use commit, but meld into previous commit
f, fixup = like “squash”, but discard this commit’s log message
x, exec = run command (the rest of the line) using shell
d, drop = remove commit
pick§
squash(s) 命令
git rebase –continue
处理冲突-继续
git rebase –edit-todo
关闭了vi-继续
git rebase –abort
撤销rebase
4.revert
git revert -n [commitID] + git commit -m ‘message’
git revert [commitID]
回退[commitID]这个版本的代码,其他保持不变
多个撤销
git revert -n [commitID1]…[commitID3]
撤销连续commit,至commitID1
git revert -n [commitID1]
git revert -n [commitID4]
撤销不连续commit,1和4
终止revert
git cherry-pick –abort
revert 之后,还没有提交,可以终止
5.reset
适用于:提交错误,代码回退。
reset的操作其实就是把指针指到你要到达的那个commitID(或版本),后面的commit(或版本)不再出现在git树中,但是只要你能找回id(git reflog),即使已经reset掉的commit,也可以用它找回来
标签:想走就走,想回就回
git reset –soft [commitID]
git reset –hard [commitID]
git reset –mixed HEAD^
git reset HEAD~1
master 分支在 GitLab 里是被保护的,无法强推
rebase + revert
6.remote
git remote add origin
远程库的http或ssh 把本地库与远程库链接
7.补充:创建新项目并关联git仓库
下载node(npm),xcode(git),安装vue,vue-cli,webpack.
vue init webpack ‘myproject’
创建vue 项目
npm install
加载依赖
git init
初始化git
git add .
add 所有文件
git commit -m ‘master’
提交所有代码
git remote add origin
关联远程库
git push -u origin mater
把代码推送到远程库
1、本站所有资源均从互联网上收集整理而来,仅供学习交流之用,因此不包含技术服务请大家谅解!
2、本站不提供任何实质性的付费和支付资源,所有需要积分下载的资源均为网站运营赞助费用或者线下劳务费用!
3、本站所有资源仅用于学习及研究使用,您必须在下载后的24小时内删除所下载资源,切勿用于商业用途,否则由此引发的法律纠纷及连带责任本站和发布者概不承担!
4、本站站内提供的所有可下载资源,本站保证未做任何负面改动(不包含修复bug和完善功能等正面优化或二次开发),但本站不保证资源的准确性、安全性和完整性,用户下载后自行斟酌,我们以交流学习为目的,并不是所有的源码都100%无错或无bug!如有链接无法下载、失效或广告,请联系客服处理!
5、本站资源除标明原创外均来自网络整理,版权归原作者或本站特约原创作者所有,如侵犯到您的合法权益,请立即告知本站,本站将及时予与删除并致以最深的歉意!
6、如果您也有好的资源或教程,您可以投稿发布,成功分享后有站币奖励和额外收入!
7、如果您喜欢该资源,请支持官方正版资源,以得到更好的正版服务!
8、请您认真阅读上述内容,注册本站用户或下载本站资源即您同意上述内容!
原文链接:https://www.shuli.cc/?p=9469,转载请注明出处。
评论0