Git常用命令 - wxtt-github/blog GitHub Wiki
- git config --global user.name "Your Name"
- git config --global user.email "[email protected]" 安装完成后的配置命令,global代表配置所有的仓库
- git init 将所在目录变为Git可以管理的仓库
- git add <文件名(含扩展名)> 将文件加进暂存区
- git commit -m “备注信息” 将文件加进仓库
- git status 查看仓库状态,如是否有文件被修改
- git diff 查看工作区和暂存区差异
- git diff --cached 查看暂存区和仓库差异
- git diff HEAD (--文件) 查看工作区和仓库差异,括号代表可有可无
- git log 查看提交记录(包括版本号)
- git reset --hard HEAD^ 回退到上一个版本
- git reset --hard HEAD~<number> 回退到上number个版本
- git reset --hard <版本号的前几位> 回退到指定版本,版本号填写至少为四位
- git reflog 查看命令历史,包括版本号(用于回退到未来)
- git restore <文件(含扩展名)> 回退到上一次add或commit的状态,同等命令为git checkout -- <文件>用于未add操作时的回退
- git restore --staged <文件> 将暂存区的最新修改撤销,同等命令为git reset HEAD <文件>
- ①git rm <文件>②git commit -m “备注信息” 版本库的删除操作
- ssh-keygen -t rsa -C “[email protected]” 创建SSH Key,一路回车,在主目录下找到.ssh目录,其中id_rsa是私钥,id__rsa.pub是公钥
- git remote add origin [email protected]:<Github用户名>/<库名>.git 连接远程库,还有一个常用的是[email protected]
- git push -u origin master 推送本地仓库内容(第一次),补充:如果推送失败,是因为需要同步远程库和本地库,输入git pull --rebase origin master即可
- git push origin master 推送本地仓库内容(第二次及以后)
- git branch -M <name> 将远程仓库主分支如master改名为name
- ①git remote -v ②git remote rm origin 删除远程库
- git clone [email protected]:<github用户名>/<远程库名>.git 克隆远程库到本地
- git branch <name> 创建名为name的分支
- git switch <name> 切换到名为name的分支,同等命令为git checkout <name>
- git switch -c <name> 创建并切换到名为name的分支,同等命令为git checkout -b <name>
- git branch 查看当前分支
- git merge <name> 将名为name的分支合并到master分支
- git branch -d <name> 将名为name的分支删除
- git log --graph 查看分支合并图
- git merge --no-ff -m "备注信息" <分支名> 禁用Fast forward的方式来合并分支
- git stash 将当前工作现场储藏起来
- git stash list 查看储藏的工作现场
- git stash apply <特定的stash编号> 恢复现场方式一,stash中内容不删除,需要git stash drop来删除
- git stash pop 恢复现场方式二,恢复的同时删除stash中的内容
- git remote 查看远程库的信息
- git remote -v 查看远程库的具体信息
- git push origin <分支名> 从本地推送分支,若推送失败,用git pull尝试抓取远程的新提交
- git switch -c <分支名> origin/<分支名> 在本地创建和远程分支对应的分支
- git branch --set-upstream <分支名> origin/<分支名> 建立本地分支和远程分支的关联,再用git pull抓取,若有冲突,手动处理冲突
- git rebase 将分支整理成直线
- git tag <tag-name> 给当前分支打上标签
- git tag <tag-name> 给某个commit打上标签
- git log --pretty=oneline --abbrev-commit 查看历史提交的commit id
- git show <tag-name> 查看标签信息
- git tag -a <tag-name> -m "备注信息" 带上信息打标签
- git tag -d <tag-name> 删除标签
- git push origin <tag-name> 推送某个标签到远程
- git push origin --tags 一次推送所有标签
- ①git tag -d <tag-name> ②git push origin :refs/tags/<tag-name> 删除已经推送到远程的标签①为本地删除②为远程删除
注:尖括号<>在实际操作中不用输入。可能列举了错误的命令,欢迎各位评论指正,感谢!