git init
创建版本库
版本控制系统,只能跟踪文本文件的改动,对于图片、视频这些二进制文件,虽然也能进行管理,但没法跟踪文件的变化
git add
文件添加到暂存区
git commit -m <message>
把暂存区的所有内容提交到当前分支
git status
查看工作区当前状态
git diff file
查看修改内容
git diff HEAD --file
查看工作区和版本库里面最新版本的区别
git log
查看提交历史 --pretty=oneline
参数简略信息
git reset --hard commit_id
版本回退, HEAD
指向当前版本 HEAD^
指向上一版本
git reflog
查看命令历史
git checkout -- file
工作区文件回到最近一次git commit
或git add
时的状态
git reset HEAD <file>
撤销暂存区的修改,重新放回工作区
git rm
删除文件
git remote add origin git@server-name:path/repo-name.git
关联远程库
git push -u origin master
第一次推送master分支的所有内容
git push origin master
推送最新修改
git branch
查看所有分支
git branch <name>
创建分支
git checkout <name>
切换分支
git checkout -b <name>
创建并切换分支
git merge <name>
合并某分支到当前分支
git merge --no-ff
禁用Fast forward,merge时生成一个新的commit
git branch -d <name>
删除分支
git branch -D <name>
强行删除分支
合并分支产生冲突时,先git status
找到冲突文件,cat file
查看文件内容,手动解决冲突后再提交
git log --graph
查看分支合并图,带参数: git log --graph --pretty=oneline --abbrev-commit
git stash
储存工作现场
git stash list
查看储存的工作现场
git stash apply
恢复工作现场,但stash内容不删除
git stash drop
删除stash内容
git stash pop
恢复现场的同时删除stash内容
git stash apply stash@{number}
恢复指定的stash
git remote
查看远程库信息,git remote -v
显示详细信息
git push origin <branch-name>
推送修改到远程库
git checkout -b branch-name origin/branch-name
在本地创建和远程分支对应的分支
git pull
抓取远程最新的提交
git branch --set-upstream branch-name origin/branch-name
建立本地分支和远程分支的关联
git rebase
将本地未push的分叉提交历史整理成直线
git tag <tagname>
新建一个标签,默认为HEAD
,也可以指定一个commit id
git tag -a <tagname> -m "message"
指定标签信息
git tag
查看所有标签
git push origin <tagname>
推送本地标签
git push origin --tags
推送全部未推送过的本地标签
git tag -d <tagname>
删除一个本地标签
git push origin :refs/tags/<tagname>
删除一个远程标签
详细介绍见廖雪峰Git教程:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
网友评论