前言
会用docker了,结果啥都要自己下载(gdb,pwndbg,git...),真是麻烦到家了。现在顺便学一下git吧。
廖雪峰的教材
命令
仓库初始化git init
添加git add xxx
git commit xxx
重置git reset --hard HEAD^/HEAD~100/commit_id
git 查看
查看idgit reflog
git log
git status
查看修改git diff HEAD -- readme.txt
撤销修改git checkout -- readme.txt
删除文件git rm readme.txt -> git commit
查看分支git branch
git log图表git log --graph --pretty=oneline --abbrev-commit
挑选指定commit:git cherry-pick <commit>
整理本地分叉的提交git rebase
git 远程库
添加远程库git remote add origin [email protected]:michaelliao/learngit.git
推送远程库git push (-u) origin master
删除远程库git remote rm origin
创建并切换分支git checkout -b dev
git 合并
删除分支git branch -d dev
合并到当前分支git merge dev
创建+切换分支:git switch -c <name>
合并分支时,加上--no-ff
参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。
git stash
工作区保存 git stash apply stash@{0}
git stash list
git stash drop
git tag
打taggit tag -a v0.1 -m "version 0.1 released" 1094adb
git show tag
删除标签git tag -d v0.1
push标签到远程git push origin v1.0
上传全部标签git push origin --tags