-------------------------------------配置操作-------------------------------------
$ git config --global user.name "用户名" -- 配置用户名
$ git config --global user.email "邮箱" -- 配置邮箱
$ git init -- 创建本地仓库
-------------------------------------添加/提交/回退操作-------------------------------------
$ git add 文件名 -- 把文件从工作区添加到暂存区
$ git commit -m "备注" -- 把修改从暂存区提交到仓库; -m 后输入的是本次提交的说明
$ git status -- 查看仓库状态
$ git diff 文件名 -- 查看文件修改(差异)
$ git log -- 查看提交日志
$ git log --pretty=oneline -- 查看提交日志(一行显示)
$ git reset --hard HEAD^ -- 回退到上一个版本(commit_id)
$ git reset --hard 版本号(commit_id) -- 回退到指定版本
$ git reflog -- 可以查看所有分支的所有操作记录
$ git diff HEAD -- 文件名 -- 查看工作区和版本库里面最新版本的区别
$ git checkout -- 文件名 -- 撤销工作区中的修改(让这个文件回到最近一次git commit或git add时的状态)
$ git reset HEAD 文件名 -- 撤销暂存区的修改, 重新放回工作区
$ git rm 文件名 -- 删除文件
$ git checkout -- 文件名 -- 恢复误删文件到最新版本(git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。)
-------------------------------------远程库操作-------------------------------------
$ ssh-keygen -t rsa -C "用户名" -- 创建SSH Key
$ git push origin master -- 推送master(主)分支到origin(远程)库
$ git clone 地址 -- 从远程库clone(克隆)项目到本地(支持:ssh/https)
$ git remote -- 查看远程库信息
$ git remote -v -- 查看远程库详细信息
$ git checkout -b 分支名 origin/分支名 -- 创建origin(远程)库的指定分支到本地
$ git pull -- 从orign(远程)库拉取
-------------------------------------分支操作-------------------------------------
$ git checkout -b 分支名 -- 创建并切换到新分支
$ git branch 分支名 -- 创建新分支
$ git checkout 分支名 -- 切换分支
$ git switch -c 分支名 -- 创建并切换到新分支
$ git switch 分支名 -- 切换分支
$ git branch -- 查看当前分支
$ git merge 分支名 -- 合并指定分支到当前分支
$ git branch -d 分支名 -- 删除分支
$ git branch -D 分支名 -- 强行删除(删除一个没有合并过的分支)
$ git log --graph --pretty=oneline --abbrev-commit -- 查看分支合并图
$ git merge --no-ff -m "备注" 分支名 -- 合并指定分支到当前分支(禁用Fast forward模式, -m添加备注)
-------------------------------------bug分支操作-------------------------------------
$ git stash -- 隐藏工作现场
$ git stash list -- 查看隐藏列表
$ git stash apply -- 恢复隐藏内容(但不删除stash内容)
$ git stash drop -- 删除隐藏内容
$ git stash pop -- 恢复隐藏内容(同时会删除stash内容)
$ git stash apply stash@{0} -- 恢复到指定stash
$ git cherry-pick 版本号(commit_id) -- 复制一个特定的提交到当前分支
------------------------------------标签管理-------------------------------------
$ git tag 标签名 -- 创建标签(在最新提交的commit上打标签)
$ git tag 标签名 版本号(commit_id) -- 创建标签(在指定commit上打标签)
$ git tag -- 查看所有标签(标签不是按时间顺序展示,是按字母顺序展示的)
$ git tag -a 标签名 -m "备注" 版本号(commit_id) -- 创建标签(在指定commit上打标签, -a指定标签名, -m指定备注即说明文字)
$ git show 标签名 -- 查看标签信息(标签总是和某个commit挂钩。如果这个commit既出现在master分支,又出现在dev分支,那么在这两个分支上都可以看到这个标签。)
$ git tag -d 标签名 -- 删除标签
$ git push origin 标签名 -- 推送指定标签到远程库
$ git push origin --tags -- 一次性推送全部尚未推送到远程库的本地标签
$ git push origin :refs/tags/标签名 -- 删除一个远程标签(先删除本地标签,再删除远程标签)
------------------------------------自定义git-------------------------------------
$ git config --global color.ui true -- 配置git显示颜色
.gitignore文件 -- 用于配置git忽略文件
$ git add -f 文件名 -- 强制添加文件(用于添加被git忽略的文件)
$ git check-ignore -v 文件名 -- 检查文件被git哪条规则忽略了
git学习-常用命令整理
最新推荐文章于 2024-09-14 09:16:55 发布