Git常用命令 - wxtt-github/blog GitHub Wiki

Git常用命令整理

  • 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> 删除已经推送到远程的标签①为本地删除②为远程删除

注:尖括号<>在实际操作中不用输入。可能列举了错误的命令,欢迎各位评论指正,感谢!

⚠️ **GitHub.com Fallback** ⚠️