当前位置: 首页
编程语言
Gitee项目拉取与修改上传完整教程

Gitee项目拉取与修改上传完整教程

热心网友 时间:2026-06-14
转载

引言

Git在软件开发领域的重要性早已不言而喻。无论是个人的小项目,还是团队协作开发大型系统,熟练掌握Git的基本工作流程,已经成为开发者不可或缺的核心技能。对于国内开发者而言,Gitee作为一款稳定高效的代码托管平台,自然也是日常开发中绕不开的重要工具。本文将从实际应用场景出发,带你完整走一遍从Gitee拉取项目到上传修改的完整流程,配合具体示例,帮助你真正吃透Git的核心操作。

第一部分:Git基础概念回顾

1.1 Git的核心工作区

在动手敲命令之前,有必要先理清Git的三个关键工作区域:

  • 工作区 (Working Directory):这是你实际编辑文件的地方,每一次的代码改动都在这里发生。
  • 暂存区 (Staging Area):一个临时缓冲区域,用于存放准备提交的文件。你可以把它理解成“待发布区”。
  • 仓库 (Repository):存储项目所有历史记录和版本信息的地方,每一次提交的版本都永久保存在这里。

1.2 本地仓库与远程仓库的关系

Git是分布式版本控制系统,每个开发者本地都拥有一份完整的仓库副本。而远程仓库(例如Gitee)则像一个中央协作枢纽,用于同步各个开发者的代码变更。简单来说,本地仓库负责你的日常开发工作,远程仓库则负责团队协作和代码备份。

第二部分:从Gitee克隆项目到本地

2.1 初始环境准备

在开始操作之前,首先确认系统是否已经安装Git。打开终端,敲入以下命令检查:

git --version

如果尚未安装,前往Git官网下载安装包,一路默认安装即可。

2.2 配置Git用户信息(首次使用)

第一次使用Git时,需要配置身份信息,这些信息会出现在每一次提交记录中,方便团队追踪代码变更的归属:

git config --global user.name "你的姓名"
git config --global user.email "你的邮箱"
git config --global core.editor "vim"    # 设置默认编辑器,可选

2.3 克隆远程仓库

克隆操作就是将远程仓库完整复制到本地。Gitee提供两种URL协议:

  • HTTPS协议:适合初学者,无需额外配置,但每次推送可能需要输入账号密码。
  • SSH协议:安全性更高,配置完成后无需频繁输入密码,适合频繁操作的用户。

SSH密钥配置(推荐)

# 生成SSH密钥对
ssh-keygen -t rsa -C "your_email@example.com"
# 查看公钥
cat ~/.ssh/id_rsa.pub

然后将公钥内容复制到Gitee的SSH密钥设置页面(个人设置 → SSH公钥)。

克隆命令

# 使用HTTPS克隆
git clone https://gitee.com/username/project-name.git
# 使用SSH克隆(配置好SSH密钥后)
git clone git@gitee.com:username/project-name.git

克隆完成后,本地会自动创建一个与仓库同名的目录,并且已经初始化好本地仓库。

第三部分:日常开发工作流详解

从Gitee拉取项目到上传修改的完整流程

3.1 完整示例:从拉取到提交的全过程

用一个具体的案例来演示完整的Git工作流程,这样理解起来更加直观。

场景描述

假设我们加入了一个名为“blog-system”的开源项目团队,需要新增一个文章分类功能。

步骤1:克隆项目到本地

# 克隆项目
git clone git@gitee.com:team-name/blog-system.git
# 进入项目目录
cd blog-system

步骤2:查看当前分支状态

# 查看所有分支
git branch -a
# 输出示例:
#   * main
#   remotes/origin/main
#   remotes/origin/develop

步骤3:创建功能分支

合理的分支策略能够保持主分支的稳定性。为新建功能创建独立分支:

# 创建并切换到新分支
git checkout -b feature/article-category
# 查看当前分支
git branch
# 输出:* feature/article-category

步骤4:获取最新代码(多人协作时很重要)

在开始编码之前,确保你的基础代码是最新的:

# 切换到主分支
git checkout main
# 拉取远程最新代码
git pull origin main
# 切换回功能分支并合并主分支更新
git checkout feature/article-category
git merge main

步骤5:进行开发工作

现在可以正式开始写代码了。假设我们创建了两个新文件:

# 创建分类模型文件
touch models/category.py
# 创建分类视图文件
touch views/category_view.py
# 编辑一些现有文件
vim controllers/article_controller.py

步骤6:查看和审查更改

完成代码编写后,查看我们做了哪些修改:

# 查看工作区状态
git status
# 输出示例:
# On branch feature/article-category
# Changes not staged for commit:
#   (use "git add ..." to update what will be committed)
#   (use "git restore ..." to discard changes in working directory)
#     modified:   controllers/article_controller.py
#     modified:   README.md
# Untracked files:
#   (use "git add ..." to include in what will be committed)
#     models/category.py
#     views/category_view.py

查看具体的代码变更:

# 查看具体修改内容
git diff controllers/article_controller.py
# 查看所有变更的摘要
git diff --stat

步骤7:将更改添加到暂存区

选择性地或全部添加更改到暂存区:

# 添加特定文件
git add models/category.py
git add views/category_view.py
# 或者添加所有更改(谨慎使用)
git add .
# 再次查看状态
git status
# 此时会显示"Changes to be committed"

步骤8:提交更改到本地仓库

# 提交更改
git commit -m "feat: 添加文章分类功能
- 创建Category数据模型
- 实现分类的CRUD操作
- 在文章控制器中集成分类选择
- 更新相关文档"
# 查看提交历史
git log --oneline -5

步骤9:推送到远程仓库

# 推送到Gitee
git push origin feature/article-category
# 如果是首次推送该分支,使用-u参数建立跟踪关系
git push -u origin feature/article-category

步骤10:创建合并请求(Pull Request)

推送完成后,在Gitee页面上:

  1. 进入项目页面
  2. 点击"Pull Requests"
  3. 点击"新建Pull Request"
  4. 选择源分支(feature/article-category)和目标分支(develop或main)
  5. 填写说明并提交

3.2 处理常见的协作场景

场景A:同步他人提交的更改

当你正在开发时,队友可能已经推送了新的提交:

# 保存当前未提交的更改(可选)
git stash
# 获取远程更新
git fetch origin
# 合并到当前分支
git merge origin/main
# 恢复暂存的更改(如果使用了stash)
git stash pop
# 解决可能的冲突
# 编辑有冲突的文件,然后:
git add <解决冲突的文件>
git commit -m "解决合并冲突"

场景B:撤销错误的提交

# 撤销最后一次提交,保留更改在工作区
git reset --soft HEAD~1
# 完全撤销最后一次提交,丢弃更改
git reset --hard HEAD~1
# 撤销特定的提交(创建反向提交)
git revert 

第四部分:从零创建项目并推送到Gitee

从Gitee拉取项目到上传修改的完整流程

有时我们需要从零开始一个项目,然后将其推送到Gitee进行管理和团队协作。

步骤1:在Gitee创建空仓库

  1. 登录Gitee,点击右上角"+"号
  2. 选择"新建仓库"
  3. 填写仓库名称、描述等信息
  4. 不要初始化README、.gitignore等文件(我们将从本地创建)
  5. 点击"创建"

步骤2:本地初始化项目

# 创建项目目录
mkdir my-new-project
cd my-new-project
# 初始化Git仓库
git init
# 查看状态
git status

步骤3:创建项目文件

# 创建基础项目结构
echo "# My New Project" > README.md
echo "__pycache__/" > .gitignore
echo "*.pyc" >> .gitignore
echo "venv/" >> .gitignore
# 创建源代码目录和文件
mkdir src
touch src/main.py
touch src/__init__.py
# 创建配置文件
touch config.yaml

步骤4:首次提交

# 添加所有文件
git add .
# 提交初始版本
git commit -m "初始提交:项目基础结构"
# 查看提交历史
git log --oneline

步骤5:连接远程仓库

# 添加远程仓库地址
git remote add origin git@gitee.com:username/my-new-project.git
# 验证远程仓库
git remote -v
# 输出:
# origin  git@gitee.com:username/my-new-project.git (fetch)
# origin  git@gitee.com:username/my-new-project.git (push)

步骤6:推送代码

# 推送代码到Gitee
git push -u origin main
# 如果遇到错误,可能是因为远程仓库有README文件
# 可以先拉取再推送
git pull origin main --allow-unrelated-histories
git push origin main

步骤7:后续开发流程

现在项目已经在Gitee上了,后续开发就回到了熟悉的日常流程:

# 开发新功能
echo "print('Hello, Git!')" > src/main.py
# 提交更改
git add src/main.py
git commit -m "添加主程序入口"
# 推送更新
git push origin main

第五部分:Git最佳实践和高级技巧

5.1 提交信息的规范

规范的提交信息有助于团队协作和后期维护。推荐使用Conventional Commits提交规范:

<类型>[可选范围]: <描述>

[可选正文]

[可选脚注]

常见类型:

  • feat: 新功能
  • fix: 修复bug
  • docs: 文档更新
  • style: 代码格式调整
  • refactor: 重构代码
  • test: 测试相关
  • chore: 构建过程或辅助工具变动

5.2 .gitignore文件的配置

合理配置.gitignore可以避免将不必要的文件提交到仓库中:

# 操作系统文件
.DS_Store
Thumbs.db
# 编辑器文件
.vscode/
.idea/
*.swp
*.swo
# 运行时文件
__pycache__/
*.pyc
*.pyo
# 依赖目录
node_modules/
venv/
.env
# 日志文件
*.log
# 构建产物
dist/
build/

5.3 分支管理策略

推荐使用Git Flow或简化版的分支管理策略:

  • main/master: 生产就绪代码
  • develop: 开发集成分支
  • feature/: 功能开发分支
  • hotfix/: 紧急修复分支
  • release/: 发布准备分支

5.4 高效的Git命令别名

设置命令别名可以大幅提高日常工作效率:

# 添加到~/.gitconfig或使用命令
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.unstage 'reset HEAD --'
git config --global alias.last 'log -1 HEAD'
git config --global alias.graph "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

第六部分:常见问题与解决方案

6.1 推送时遇到冲突

# 先拉取最新代码
git pull origin main
# 解决冲突(编辑标记了冲突的文件)
# 添加解决后的文件
git add <冲突文件>
# 继续合并
git commit
# 重新推送
git push origin main

6.2 误提交了敏感信息

# 从历史中完全删除包含敏感信息的文件
git filter-branch --force --index-filter \
  "git rm --cached --ignore-unmatch config/password.txt" \
  --prune-empty --tag-name-filter cat -- --all
# 强制推送到远程(警告:这会重写历史)
git push origin --force --all

6.3 恢复误删的文件或分支

# 查看所有提交记录(包括已删除的)
git reflog
# 恢复特定的提交
git checkout  -- <文件名>
# 恢复被删除的分支
git checkout -b restored-branch 

结语

Git是一个强大而灵活的版本控制工具,掌握其基本工作流程是每一位开发者的必修课。通过本文的详细讲解和实际案例演示,相信你已经掌握了从Gitee拉取项目到上传修改的完整流程。请记住,Git的核心精髓在于“小步快跑,频繁提交”——不要等到完成一个大功能才提交,而是将工作分解为多个小提交,逐步推进。

实践是学习Git的最佳途径。建议你立即创建一个Gitee账户,按照本文的示例亲手操作一遍,从克隆现有项目开始,逐步尝试创建自己的项目并推送到远程仓库。随着实践经验的积累,你会越来越熟练地运用Git来高效管理你的代码。

Git常用命令速查手册(附详细注释)

附件:完整命令流程示例

示例一:从Gitee克隆项目并完成首次功能开发

# ====================================================
# 第一部分:环境准备和项目克隆
# ====================================================
# 1. 配置全局用户信息(首次使用Git时需要)
git config --global user.name "张三"
git config --global user.email "zhangsan@example.com"

# 2. 配置SSH密钥(可选,但推荐)
ssh-keygen -t rsa -b 4096 -C "zhangsan@example.com"
# 执行后会生成~/.ssh/id_rsa和~/.ssh/id_rsa.pub文件

# 3. 复制公钥到剪贴板(macOS)
pbcopy < ~/.ssh/id_rsa.pub
# Linux系统使用:cat ~/.ssh/id_rsa.pub | xclip -selection clipboard

# 4. 克隆项目到本地(使用HTTPS)
git clone https://gitee.com/team-name/project.git
# 使用SSH克隆:git clone git@gitee.com:team-name/project.git

# 5. 进入项目目录
cd project

# ====================================================
# 第二部分:分支管理和开发准备
# ====================================================
# 6. 查看所有分支(本地和远程)
git branch -a
# 带*号的是当前所在分支

# 7. 创建并切换到新的功能分支
git checkout -b feature/user-authentication
# -b参数表示创建新分支并切换

# 8. 确保本地分支与远程主分支同步
git fetch origin
# 获取远程所有更新但不合并

# 9. 查看远程分支的更新情况
git log origin/main --oneline -5
# 显示远程主分支最近5条提交

# 10. 合并远程主分支的更新到当前分支
git merge origin/main
# 如果出现冲突,需要手动解决

# ====================================================
# 第三部分:开发过程中的代码管理
# ====================================================
# 11. 开发过程中查看工作区状态
git status
# 显示哪些文件被修改、添加或删除

# 12. 查看具体的文件修改内容
git diff src/models/user.py
# 查看user.py文件的详细修改

# 13. 添加新创建的文件到暂存区
git add src/models/user.py
git add src/controllers/auth_controller.py

# 14. 添加修改的现有文件
git add src/utils/validator.py

# 15. 批量添加所有修改和新文件(谨慎使用)
git add .
# 或者 git add --all

# 16. 添加时排除某些文件
git add src/* -- ':!src/tests/' ':!*.log'
# 添加src目录下除了tests和.log文件外的所有

# 17. 从暂存区移除误添加的文件
git reset HEAD src/config.temp.json
# 文件保留在工作区,只是从暂存区移除

# 18. 查看暂存区内容
git diff --cached
# 显示即将提交的更改

# 19. 提交更改到本地仓库
git commit -m "feat: 实现用户认证功能
- 添加User数据模型
- 实现JWT token生成和验证
- 创建登录和注册接口
- 添加密码加密功能
Closes #123"
# 多行提交信息,第一行是摘要,空行后是详细说明

# 20. 查看提交历史
git log --oneline --graph -10
# 显示图形化提交历史,最近10条

# 21. 开发过程中临时保存未完成的工作
git stash
# 将未提交的更改保存到临时栈

# 22. 查看所有暂存的更改
git stash list
# 显示stash栈中的所有条目

# 23. 恢复最近一次暂存的更改
git stash pop
# 应用并删除栈顶的暂存

# 24. 恢复特定暂存
git stash apply stash@{1}
# 应用但不删除指定的暂存

# ====================================================
# 第四部分:推送到远程仓库
# ====================================================
# 25. 推送当前分支到远程仓库(首次推送)
git push -u origin feature/user-authentication
# -u参数设置上游分支,后续可直接使用git push

# 26. 查看远程仓库信息
git remote -v
# 显示所有远程仓库地址

# 27. 查看特定远程分支的详细信息
git remote show origin

# 28. 推送到远程仓库(非首次)
git push origin feature/user-authentication

# 29. 强制推送(谨慎使用,会覆盖远程历史)
git push -f origin feature/user-authentication
# 仅在必要时使用,如rebase后

# ====================================================
# 第五部分:团队协作和代码同步
# ====================================================
# 30. 拉取远程分支的更新
git pull origin main
# 相当于git fetch + git merge

# 31. 使用rebase方式更新(保持线性历史)
git fetch origin
git rebase origin/main
# 将本地提交应用到远程更新之后

# 32. 查看文件修改历史
git log --follow -p src/models/user.py
# 显示user.py文件的完整修改历史

# 33. 查看谁在什么时间修改了哪一行
git blame src/models/user.py
# 显示每行代码的最后修改者和时间

# 34. 撤销上一次提交但保留更改
git reset --soft HEAD~1
# 回退到上一个提交,更改保留在工作区

# 35. 完全撤销上一次提交
git reset --hard HEAD~1
# 彻底删除上一次提交,谨慎使用

# 36. 创建撤销某个提交的新提交
git revert 
# 安全的撤销方式,会创建新的反向提交

示例二:本地新建项目并推送到Gitee

# ====================================================
# 第一部分:项目初始化
# ====================================================
# 1. 创建项目目录
mkdir my-awesome-project
cd my-awesome-project

# 2. 初始化Git仓库
git init
# 创建.git目录,开始版本控制

# 3. 创建项目基础结构
echo "# My Awesome Project" >> README.md
echo "这是项目描述" >> README.md

# 4. 创建.gitignore文件
cat > .gitignore << EOF
# 依赖目录
node_modules/
venv/
__pycache__/
# 环境文件
.env
.env.local
# 日志文件
*.log
npm-debug.log*
# 编辑器文件
.vscode/
.idea/
*.swp
# 系统文件
.DS_Store
Thumbs.db
# 构建产物
dist/
build/
*.exe
EOF

# 5. 创建源代码结构
mkdir src
mkdir tests
mkdir docs

# 6. 创建初始代码文件
echo "def main():" > src/app.py
echo "    print('Hello, World!')" >> src/app.py
echo "" >> src/app.py
echo "if __name__ == '__main__':" >> src/app.py
echo "    main()" >> src/app.py

# 7. 创建测试文件
echo "import unittest" > tests/test_app.py
echo "from src.app import main" >> tests/test_app.py

# ====================================================
# 第二部分:首次提交
# ====================================================
# 8. 查看当前状态
git status
# 应该显示所有未跟踪的文件

# 9. 添加所有文件到暂存区
git add .
# 或者 git add README.md .gitignore src/ tests/

# 10. 查看暂存区内容
git status
# 文件现在应该显示为"Changes to be committed"

# 11. 提交初始版本
git commit -m "初始提交:项目基础结构
- 添加项目README文档
- 配置.gitignore文件
- 创建源代码和测试目录结构
- 实现基础应用程序框架"

# 12. 验证提交
git log --oneline
# 应该显示刚才的提交

# ====================================================
# 第三部分:连接远程仓库
# ====================================================
# 13. 在Gitee创建空仓库后,添加远程地址
git remote add origin git@gitee.com:your-username/my-awesome-project.git

# 14. 验证远程仓库配置
git remote -v
# 应该显示fetch和push的URL

# 15. 重命名远程仓库(如果需要)
git remote rename origin gitee
# 当有多个远程仓库时很有用

# 16. 推送到远程仓库
git push -u origin main
# 如果main分支不存在,可能需要先创建
# 或者使用:git push -u origin master

# 17. 如果远程仓库有初始文件导致冲突
git pull origin main --allow-unrelated-histories
# 允许合并不相关的历史
git push origin main

# ====================================================
# 第四部分:后续开发工作流
# ====================================================
# 18. 创建开发分支
git checkout -b develop

# 19. 开发新功能
echo "def new_feature():" >> src/app.py
echo "    return 'New feature implemented'" >> src/app.py

# 20. 测试修改
git diff
# 查看具体修改内容

# 21. 添加并提交
git add src/app.py
git commit -m "feat: 添加新功能函数"

# 22. 创建功能分支
git checkout -b feature/calculator

# 23. 实现功能
cat > src/calculator.py << EOF
def add(a, b):
    return a + b
def subtract(a, b):
    return a - b
def multiply(a, b):
    return a * b
def divide(a, b):
    if b == 0:
        raise ValueError("除数不能为零")
    return a / b
EOF

# 24. 添加测试
cat > tests/test_calculator.py << EOF
import unittest
from src.calculator import *
class TestCalculator(unittest.TestCase):
    def test_add(self):
        self.assertEqual(add(2, 3), 5)
    def test_divide_by_zero(self):
        with self.assertRaises(ValueError):
            divide(5, 0)
EOF

# 25. 提交功能代码
git add src/calculator.py tests/test_calculator.py
git commit -m "feat: 添加计算器模块和测试"

# 26. 切换回开发分支并合并功能
git checkout develop
git merge feature/calculator --no-ff
# --no-ff保留功能分支的历史

# 27. 删除已合并的功能分支
git branch -d feature/calculator

# 28. 推送开发分支
git push -u origin develop

# 29. 准备发布版本
git checkout -b release/v1.0.0
# 在发布分支上进行最后的测试和文档更新

# 30. 合并到主分支
git checkout main
git merge release/v1.0.0 --no-ff
git tag -a v1.0.0 -m "版本1.0.0发布"
git push origin main --tags

# 31. 删除发布分支
git branch -d release/v1.0.0
git push origin --delete release/v1.0.0

示例三:常用Git操作快捷命令

# ====================================================
# 实用快捷命令和别名
# ====================================================
# 1. 设置常用别名
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.unstage 'reset HEAD --'
git config --global alias.last 'log -1 HEAD'

# 2. 查看图形化提交历史
git config --global alias.graph "log --all --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

# 3. 简洁状态查看
git config --global alias.ss "status -s"

# 4. 查看最后一次提交的详细内容
git config --global alias.lastdetail "show --stat"

# 5. 使用别名
git st           # 查看状态
git co main      # 切换到main分支
git ci -m "msg"  # 提交
git graph        # 图形化历史

# ====================================================
# 高级操作和技巧
# ====================================================
# 6. 修改最近一次提交信息
git commit --amend -m "新的提交信息"
# 如果已经推送,需要强制推送:
git push --force-with-lease

# 7. 修改多个提交信息(交互式rebase)
git rebase -i HEAD~3
# 会打开编辑器,可以修改最近3个提交

# 8. 将多个提交合并为一个(squash)
# 在rebase交互界面中,将pick改为squash

# 9. 查找包含特定字符串的提交
git log --all --grep="bugfix"
# 在所有提交中搜索包含"bugfix"的提交

# 10. 查找引入bug的提交
git bisect start
git bisect bad            # 当前版本有问题
git bisect good v1.0.0    # v1.0.0版本正常
# Git会自动二分查找有问题的提交

# 11. 清理本地已合并的分支
git branch --merged | grep -v "*" | xargs -n 1 git branch -d
# 删除所有已合并到当前分支的分支

# 12. 清理远程已删除的分支
git fetch --prune
# 删除本地已不存在的远程分支引用

# 13. 导出特定版本的代码
git archive --format=zip --output=v1.0.0.zip v1.0.0
# 导出v1.0.0标签版本的代码为zip文件

# 14. 统计代码贡献
git shortlog -sn --all --no-merges
# 显示所有贡献者的提交数量统计

# 15. 统计文件更改行数
git log --since="2023-01-01" --until="2023-12-31" --pretty=tformat: --numstat
# 显示2023年每个文件的增删行数统计

示例四:错误处理和恢复操作

# ====================================================
# 错误恢复和撤销操作
# ====================================================
# 1. 恢复误删的文件
# 先找到文件被删除的提交
git log --all --full-history -- 
# 恢复文件
git checkout ^ -- 

# 2. 恢复被覆盖的分支
# 查看所有操作记录
git reflog
# 找到分支被删除前的提交
git checkout -b restored-branch 

# 3. 撤销工作区的修改(未add)
git checkout -- 
# 或者 git restore 

# 4. 撤销暂存区的修改(已add但未commit)
git reset HEAD 
# 或者 git restore --staged 

# 5. 修改提交的作者信息
git commit --amend --author="新作者 "
# 只修改最后一次提交

# 6. 批量修改作者信息
git filter-branch --env-filter '
OLD_EMAIL="旧的@邮箱.com"
CORRECT_NAME="正确的名字"
CORRECT_EMAIL="正确的@邮箱.com"
if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
then
    export GIT_COMMITTER_NAME="$CORRECT_NAME"
    export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
fi
if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
then
    export GIT_AUTHOR_NAME="$CORRECT_NAME"
    export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
fi
' --tag-name-filter cat -- --branches --tags

# 7. 恢复误操作的git reset
# 查看reflog找到reset前的状态
git reflog
# 恢复到reset前的状态
git reset --hard HEAD@{1}

# 8. 清理未跟踪的文件
git clean -n   # 预览哪些文件会被删除
git clean -f   # 删除未跟踪的文件
git clean -fd  # 删除未跟踪的文件和目录

# 9. 解决合并冲突后继续
git add <解决冲突的文件>
git merge --continue
# 或者 git commit

# 10. 取消合并操作
git merge --abort
# 或者 git rebase --abort

# 11. 查找大文件
git rev-list --objects --all |
  git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' |
  sed -n 's/^blob //p' |
  sort --numeric-sort --key=2 |
  tail -10 |
  cut -c 1-12,41- |
  $(command -v gnumfmt || echo numfmt) --field=2 --to=iec-i --suffix=B --padding=7 --round=nearest
# 显示仓库中最大的10个文件

这个速查手册涵盖了从基础到高级的Git操作,每个命令都附有详细注释。建议将这些示例保存为脚本文件,在实际操作中随时参考。记住,Git是一个功能强大的工具,熟练掌握它会让你的开发工作更加高效和有序。

来源:https://www.jb51.net/program/3576085ny.htm

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
Git删除远程分支与本地分支的详细操作步骤

Git删除远程分支与本地分支的详细操作步骤

删除远程分支用`gitpushorigin--delete`,本地分支根据是否合并选`gitbranch-d`安全删除或`-D`强制删除。现代编辑器也提供可视化删除。清理前需确认分支状态,避免误删重要更改。

时间:2026-06-14 06:52
Git合并后回退操作完整指南与步骤详解

Git合并后回退操作完整指南与步骤详解

在Git合并后遇问题时,可使用三种方案回退:完成合并并提交;放弃合并并回退到合并前状态;完全重置到远程状态。关键命令包括gitmerge--abort、gitreset--hard和gitreflog。建议养成gitpull前先gitfetch、使用--no-commit等习惯,必要时启用rebase策略。

时间:2026-06-14 06:52
一文快速掌握Git暂存与stash功能全面指南

一文快速掌握Git暂存与stash功能全面指南

Git暂存区通过gitadd添加修改、gitrestore--staged取消暂存。stash临时保存未提交修改使工作区变干净,常用命令有gitstashpush-m添加备注、stashlist查看记录、stashpop恢复并删除、stashapply恢复不删除、stashdrop clear删除记录。默认不储藏未追踪文件,需加-u参数;建议同分支储藏同分支

时间:2026-06-14 06:52
Git忽略大小写重命名文件的解决方法

Git忽略大小写重命名文件的解决方法

Git默认忽略文件名大小写,需设置`core ignorecasefalse`开启大小写敏感。当修改文件名大小写后,先执行`gitrm--cached`删除旧文件的暂存记录,再执行`gitadd`添加新文件,最后提交即可完成重命名。这样能避免远程仓库中出现重复文件,确保大小写变更被正确追踪。

时间:2026-06-14 06:52
微信小程序input只读属性readonly失效原因

微信小程序input只读属性readonly失效原因

微信小程序中input的readonly属性仅限制编辑,仍可聚焦并触发事件,无法完全禁止用户交互。建议改用disabled属性彻底禁用、阻止事件传播或设置CSS的pointer-events:none解决。纯展示场景推荐直接使用view组件,并根据业务场景选择合适方案。

时间:2026-06-14 06:52
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全
  • 日榜
  • 周榜
  • 月榜