配置你的用户名和邮箱
git config --global user.name “Your Name”
git config --global user.email “email@example.com”
创建目录,并进入新建的目录
mkdir learngit
cd learngit
显示当前路径
pwd
将当前目录初始化为Git可以管理的仓库
git init
将一个readme.txt文件添加到仓库,并提交
git add readme.txt
git commit -m “wrote a readme file”
commit可以一次提交多个文件,所以可以多次add不同的文件一次commit。
查看当前仓库状态
git status
查看对文件做了什么修改
git diff readme.txt
查看修改历史记录
git log
版本回退
git reset --hard HEAD^(上一版本)
git reset --hard HEAD~100(上100个版本)
git reset --hard 3628164(退回到指定版本)
版本回退之后恢复新版本
git reflog(显示之前每次执行命令)
丢弃工作区的修改
git checkout – readme.txt
删除文件
rm test.txt
git rm test.txt
git commit -m “remove test.txt”
创建ssk
ssh-keygen -t rsa -C “youremail@example.com”
链接远程库
git remote add origin git@github.com:JasonSGuan/learngit.git
将本地库的内容推送到远程库上
git push -u origin master
从远程库克隆到本地
git clone git@github.com:JasonSGuan/learngit.git
创建并切换到分支
git checkout -b dev
相当于两条命令
git branch dev(创建分支)
$ git checkout dev(切换到分支)
查看当前所有分支
git branch
当前分支前会带有*号
合并分支
git merge dev
删除分支
git branch -d dev
查看分支合并情况
git log --graph --pretty=oneline --abbrev-commit
合并分支出现冲突是要先解决冲突,在提交
git merge --no-ff -m “merge with no-ff” dev(禁用Fast forward)
储存工作现场
git stash
查看储存的工作现场
git stash list
恢复
git stash pop
git stash apply stash@{0}
强制删除
git branch -D feature-vulcan
从远程库取最新的修改
git pull
指定本地分支与远程库分支链接
git branch --set-upstream dev origin/dev
创建标签
git tag v1.0
查看标签信息
git show v0.9
推送标签到远程
git push origin v1.0
推送所有标签
git push origin --tags