ssh-keygen -t rsa -C "youremail@example.com"
git status
git clone
git add
git commit -m
git commit --amend
git push
git diff
git log
git reflog
git reset --hard HEAD^ HEAD~1
git commit --amend
git checkout -- file
git reset HEAD <file>
--mixed
意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。
--soft
不删除工作空间改动代码,撤销commit,不撤销git add .
--hard
删除工作空间改动代码,撤销commit,撤销git add .
注意完成这个操作后,就恢复到了上一次的commit状态。
git checkout -- file 放弃修改
git reset HEAD <file> 暂存区的修改撤销掉 unstage
git rm
1.在本地目录下关联远程repository :
git remote add origin git@github.com:git_username/repository_name.git
2.取消本地目录下关联的远程库:
git remote remove origin
git remote rm origin
git push -u origin master第一次推送master分支的所有内容;
git push -u origin gaga 相当于 git push origin gaga + git branch --set-upstream-to=origin/gaga master
git checkout -b dev = git branch dev + git checkout dev
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
git log --graph --pretty=oneline --abbrev-commit
git merge --no-ff -m "merge with no-ff" dev
git stash
git stash list
git stash apply
git stash drop
如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name>强行删除。
git remote
git remote -v
查看远程库信息,使用git remote -v;
本地新建的分支如果不推送到远程,对其他人就是不可见的;
从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;
在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;
建立本地分支和远程分支的关联,使用git branch --set-upstream-to=origin/dev dev ;
从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。
git tag 查看所有标签
git tag v1.0 给最新提交的commint 打v1.0标签
git tag v0.9 f52c633 给commit id 为f52c633打0.9标签
git tag -a <tagname> -m "blablabla..."
git tag -d v0.1 删除本地
git push origin <tagname> 标签推送到远程
git push origin --tags 推送全部没有推送的标签到远程
删除远程 :
先删本地: git tag -d v0.9
再删远程:git push origin :refs/tags/v0.9
网友评论