Git 常用指令

Git 是一个开源的分布式版本控制系统,主要用于跟踪文件的更改,协调多个开发者之间的工作,并管理项目的不同版本。广泛用于软件开发和其他需要版本控制的领域。这里收集了 Git 的常用指令。

1.文档

Github 汇总的 Git Cheat Sheet 在线文档

Github 汇总的 Git Cheat Sheet PDF

Gitlab 汇总的 Git Cheat Sheet PDF

Pro Git 第二版

2.常用指令

2.1.配置

git config --global user.name              # 查看全局用户名
git config --global user.name "[name]"     # 设置全局用户名
git config --global user.email "[email]"   # 设置全局邮箱
git config --local user.name "[name]"      # 设置用于当前工程的局部用户名
git config --global color.ui auto 		   # 开启彩色命令行输出

2.2.初始化

git init          # 将当前工作目录初始化为Git仓库
git clone [url]   # 通过URL从远程克隆仓库

2.3.改动操作

git status                              # 查看工作目录中的改动
git add [file]                          # 暂存文件
git reset [file]                        # 撤回文件的暂存
git diff                                # 查看修改但未暂存的文件改动
git diff --staged                       # 查看暂存但未提交的文件改动
git rm [file]                           # 删除文件,并将改动暂存
git mv [existing-path] [new-path]       # 移动文件路径,并将改动暂存
git commit -m "[descriptive message]"   # 将暂存内容作为新的快照提交

2.4.临时保存

git stash                     # 保存当前工作目录和暂存区的修改到栈中,并恢复工作目录和暂存区到干净的状态
git stash save "message"      # 保存当前修改并附加描述信息
git stash show [stash@{n}]    # 显示指定存储项的更改
git stash list                # 列出当前栈中的所有保存项
git stash apply [stash@{n}]   # 将指定的存储项应用到当前工作目录和暂存区,如果不指定则应用最近项
git stash pop [stash@{n}]     # 将指定的存储项应用到当前工作目录和暂存区,并从栈中移除该存储项
git stash drop [stash@{n}]    # 从栈中删除指定的存储项。如果不指定则删除最近项
git stash clear               # 清空栈中的所有存储项

2.5.分支

git branch                                     # 列出所有分支,带*的分支表示当前活动分支
git branch [branch]                            # 创建新的分支
git checkout [branch]                          # 切换到指定分支
git checkout -b [branch]                       # 创建新的分支,并切换到该分支
git merge [branch]                             # 将分支[branch]合并到当前分支
git merge --no-ff -m "[descriptive message]"   # 非快进式合并

2.6.查看历史提交

git log                          # 列出当前分支的提交历史
git log -n [count]               # 列出当前分支最新的count个提交历史
git log [branch]..               # 列出在当前分支,但指定分支上没有的提交
git log ..[branch]               # 列出在指定分支,但当前分支上没有的提交
git log [branchB]..[branchA]     # 列出在分支A但不在分支B的提交
git log --follow [file]          # 列出指定文件的提交历史,包括重命名操作
git log --stat -M 			     # 查看提交历史,同时显示每个提交的统计信息,并能检测文件的重命名
git diff [branchB]...[branchA]   # 列出相对于分支A而不相对于分支B的改动
git show [commit-SHA]            # 列出指定提交的详细信息

2.7.修改历史提交

git rebase -i [commit-SHA]       # 变基,重新应用提交历史
git rebase --continue            # 在解决冲突后,继续rebase过程
git rebase --abort               # 中止当前的rebase过程,并恢复到rebase开始前的状态
git reset --soft [commit-SHA]    # 重置HEAD指针到指定的提交,保留所有更改在暂存区中
git reset --mixed [commit-SHA]   #(默认)重置HEAD指针到指定的提交,并且重置暂存区,但保留工作目录中的更改
git reset --hard [commit-SHA]    # 重置HEAD指针到指定的提交,并丢弃暂存区和工作目录中的更改

2.8.远程仓库操作

git remote add [alias] [url]   # 添加一个新远程存储库地址,并指定别名,如origin
git fetch [alias]              # 将指定的远程仓库分支的更新下载到本地,但不会自动合并这些更改到本地分支
git merge [alias]/[branch]     # 合并远程仓库的指定分支到本地分支
git pull                       # 从远程仓库获取最新的更改并自动合并到当前分支,是git fetch和git merge的组合
git push [alias] [branch]      # 将本地分支的更改推送到远程仓库

2.9.忽略指定文件的更动

在工作目录添加文件.gitignore,以如下形式添加不想跟踪的文件

logs/
*.notes
pattern*/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值