git相关操作


1. 初始化仓库

bash 复制代码
git init                            # 初始化一个新的 Git 仓库
git clone <repository_url>          # 克隆远程仓库到本地

2. 配置

bash 复制代码
git config --global user.name "Your Name"       # 设置全局用户名
git config --global user.email "your.email@example.com"  # 设置全局邮箱
git config --list                                # 查看当前配置

3. 基本操作

bash 复制代码
git status                        # 查看工作目录和暂存区的状态
git add <file>                    # 将文件添加到暂存区
git add .                         # 将所有修改的文件添加到暂存区
git commit -m "commit message"    # 提交暂存区的更改到本地仓库
git commit -a -m "commit message" # 跳过暂存区,直接提交所有已跟踪文件的更改

4. 分支操作

bash 复制代码
git branch                        # 列出所有本地分支
git branch <branch_name>          # 创建一个新分支
git checkout <branch_name>        # 切换到指定分支
git checkout -b <branch_name>     # 创建并切换到新分支
git merge <branch_name>           # 将指定分支合并到当前分支
git branch -d <branch_name>       # 删除指定分支
git branch -m <new_branch_name>   # 重命名当前分支

5. 远程操作

bash 复制代码
git remote -v                     # 查看远程仓库信息
git remote add <name> <url>       # 添加一个新的远程仓库
git fetch <remote>                # 从远程仓库获取更新,但不合并
git pull <remote> <branch>        # 从远程仓库拉取更新并合并到当前分支
git push <remote> <branch>        # 将本地分支推送到远程仓库
git push -u <remote> <branch>     # 推送并设置上游分支

6. 撤销操作

bash 复制代码
git checkout -- <file>            # 撤销工作目录中文件的修改
git reset HEAD <file>             # 将文件从暂存区移除
git reset --soft <commit>         # 撤销提交,但保留更改在暂存区
git reset --mixed <commit>        # 撤销提交,并将更改保留在工作目录
git reset --hard <commit>         # 撤销提交并丢弃所有更改
git revert <commit>               # 创建一个新的提交来撤销指定提交的更改

7. 查看历史

bash 复制代码
git log                           # 查看提交历史
git log --oneline                 # 查看简洁的提交历史
git log --graph                   # 查看带有分支图的提交历史
git show <commit>                 # 查看指定提交的详细信息
git diff                          # 查看工作目录和暂存区的差异
git diff --cached                 # 查看暂存区和最后一次提交的差异
git diff <commit1> <commit2>      # 查看两个提交之间的差异

8. 标签操作

bash 复制代码
git tag                           # 列出所有标签
git tag <tag_name>                # 在当前提交上创建一个轻量标签
git tag -a <tag_name> -m "tag message"  # 创建一个带注释的标签
git push <remote> <tag_name>      # 推送标签到远程仓库
git push <remote> --tags          # 推送所有标签到远程仓库
git tag -d <tag_name>             # 删除本地标签
git push <remote> --delete <tag_name>  # 删除远程标签

9. 暂存和恢复

bash 复制代码
git stash                         # 将当前工作目录的修改暂存起来
git stash list                    # 列出所有暂存的修改
git stash apply                   # 恢复最近一次暂存的修改
git stash drop                    # 删除最近一次暂存的修改
git stash pop                     # 恢复并删除最近一次暂存的修改
git stash clear                   # 删除所有暂存的修改

10. 其他操作

bash 复制代码
git rebase <branch>               # 将当前分支的提交变基到指定分支上
git cherry-pick <commit>          # 将指定提交应用到当前分支
git bisect                        # 使用二分查找来定位引入 bug 的提交
git clean -n                      # 显示将要删除的未跟踪文件
git clean -f                      # 删除未跟踪的文件

11. 子模块

bash 复制代码
git submodule add <repository_url>  # 添加一个子模块
git submodule update --init --recursive  # 初始化并更新子模块

12. 忽略文件

bash 复制代码
# 在项目根目录创建 .gitignore 文件,列出需要忽略的文件和目录

13. 高级操作

bash 复制代码
git reflog                        # 查看引用日志,用于恢复丢失的提交或分支
git filter-branch                 # 重写提交历史(谨慎使用)
git gc                            # 清理不必要的文件并优化本地仓库

14. 协作与工作流

bash 复制代码
git fetch --prune                 # 删除远程已删除分支的本地引用
git pull --rebase                 # 拉取远程更新并使用 rebase 合并
git push --force-with-lease       # 强制推送,但避免覆盖他人工作

15. 查看 Git 版本

bash 复制代码
git --version

16. 查看 Git 安装位置

bash 复制代码
# Linux/macOS
which git

# Windows
where git

相关推荐
金銀銅鐵3 小时前
[git] 浅解 git reset 命令
git·后端
zhangfeng11334 小时前
部署到服务器上 宝塔系统 使用宝塔在线编辑器 FTP 批量上传 Git 部署 打包上传 codebudyy 编程程序开发
服务器·git·编辑器
学习是种信仰4 小时前
Git工作流
git·深度学习
yuanyuan2o26 小时前
Git merge 的几种不同模式
git·github
视觉小萌新6 小时前
关于Vscode配置企业Git
git
zh_xuan7 小时前
使用命令行把安装包上传到github
c++·git·libcurl·c++工程打包
zhangfeng11338 小时前
适合 5人以内小团队的Git 工作流 + Code Review + 自动化部署方案 FastAdmin +linunx服务器宝塔系统 外包项目 —
服务器·git·自动化·php·代码复审
念一不念二12 小时前
[Git]git仓库管理的使用
git
HZ·湘怡13 小时前
Gitee 手把手
git·gitee