git 笔记

工作区 暂存区 版本库 远程库

git add
git commit -m ""
git log

HEAD当前版本 HEAD^上个版本 HEAD~100上100个版本

git reset --hard HEAD^回退到上一版本(提交到版本库的)
git reflog 查看版本号(commit id)
git reset --hard 版本号前几位 到指定版本
git push -f 强制推送到远程

cat 文件名 查看文件内容?

git reflog 查看历史命令

git status 查看状态

git diff HEAD -- 文件名 查看工作区文件与版本库最新的区别

git checkout -- 文件名 丢弃工作区修改

git reset HEAD file 把暂存区的修改撤销掉,放回工作区

git rm 文件名 先从版本库中删除文件 再git commit (工作区文件被删)

git checkout -- 文件 将文件从版本库中恢复到工作区 (工作区文件被删)

远程库
git remote add origin git@server-name:path/repo-name.git 关联远程库

git push -u origin master 第一次推送master分支的所有内容

git push origin master 把本地master分支推送至远程

git clone git@github.com:michaelliao/gitskills.git 从远程库克隆

(Git用master指向最新的提交,再用HEAD指向master)


分支

git checkout -b dev 本地创建并切换到dev分支

git checkout -b branch-name origin/branch-name 在本地创建和远程分支对应的分支,本地和远程分支的名称最好一致

git branch --set-upstream branch-name origin/branch-name 建立本地分支和远程分支的关联


git branch 查看当前分支

git checkout master 切换回master分支

git merge dev 把dev分支合并到当前分支上(合并指定分支到当前分支,合并有冲突时解决完再add、commit文件)

git branch -d dev 删除dev分支

git log --graph 查看分支合并图

git merge --no-ff -m "merge with no-ff" dev 合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并

当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场。

开发一个新feature,最好新建一个分支;

如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name>强行删除。

查看远程库信息,使用git remote -v

从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交

 

打标签:

命令git tag可以查看所有标签。标签在分支打

git push 将当前head提交!

命令git tag <name>用于新建一个标签,默认为HEAD,也可以指定一个commit id;

命令git push origin <tagname>可以推送一个本地标签;

 

命令git push origin --tags可以推送全部未推送过的本地标签;

命令git tag -d <tagname>可以删除一个本地标签;

命令git push origin :refs/tags/<tagname>可以删除一个远程标签。

git tag -a <tagname> -m "blablabla..."可以指定标签信息;

git tag -s <tagname> -m "blablabla..."可以用PGP签名标签;

 


场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节,不过前提是没有推送到远程库。

posted @ 2018-12-18 11:42  真实_zs  阅读(67)  评论(0)    收藏  举报