常用Git操作
参考 https://www.liaoxuefeng.com/wiki/896043488029600
===========================================
git init
git add
git commit -m “xxx”
git reset –-hard COMMIT_ID
git checkout --file
git restore –staged
git log
git reflog
git remote add origin git@server-name:path/repo-name.git
git push -u origin master / git push origin master
git remote -v
==========================
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>或者git switch <name>
创建+切换分支:git checkout -b <name>或者git switch -c <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
===========================
git merge BRANCH
git log –graph
git log --graph --pretty=oneline –abbrev-commit
git merge ---no-ff m “merge with no-ff” dev
git stash 和 git stash pop
git cherry-pick <commit>
git branch -D <name>
===========================
查看远程库信息,使用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 branch –set-upstream-to=origin/branch-name branch-name ;
从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。
打标签
git tag v0.5 <commit_id>
git tag -a v0.5 -m “xxx” <commit_id>
git show v0.5
命令git push origin <tagname>可以推送一个本地标签;
命令git push origin --tags可以推送全部未推送过的本地标签;
命令git tag -d <tagname>可以删除一个本地标签;
命令git push origin :refs/tags/<tagname>可以删除一个远程标签
.gitignore
检验.gitignore的标准是git status命令是不是说working directory clean
设置别名
git config --global alias.st status