Git的基本使用方法

一、Git删除commit记录

删除 Git 中的指定提交记录,需使用 git rebase 命令。

注意:在进行这些操作之前,请务必确保理解 Git 中的提交历史和分支的工作方式,并且确保操作不会导致数据丢失。如果在团队协作中使用 Git,请与团队成员协商,以避免破坏共享的历史记录。

  1. 打开终端或命令行窗口,并导航到 Git 存储库的目录。

  2. 确保当前处于要删除提交的分支上。如果不是,请切换到正确的分支,例如:

    bash 复制代码
    git checkout your-branch-name
  3. 执行以下命令以开始交互式 rebase:

    bash 复制代码
    git rebase -i HEAD~N

    其中,N 是要保留的提交数以及要删除的提交之前的提交数。例如,如果要删除最近的两个提交,N 可以设置为 2。

  4. Git 将会打开一个文本编辑器,显示一个提交历史列表,类似于以下内容:

    bash 复制代码
    pick abc123 Some commit message
    pick def456 Another commit message
    pick 789ghi Yet another commit message
  5. 在编辑器中,将要删除的提交的行前面的 pick 更改为 dropd。例如:

    bash 复制代码
    pick abc123 Some commit message
    drop def456 Another commit message
    drop 789ghi Yet another commit message
  6. 保存并关闭编辑器。

  7. Git 将重新计算提交历史,并删除标记为 drop 的提交及其相关更改。

  8. 如果 Git 遇到冲突(conflicts),它会在重播期间停止并等待解决冲突。在解决冲突后,使用 git addgit rebase --continue 继续 rebase 进程。

  9. 完成 rebase 后,已经删除了指定提交记录。可以使用 git log 命令来验证新的提交历史。

  10. 如果要将更改推送到远程仓库,请使用 git push --force 命令,因为已经重写了提交历史。

请谨慎使用 git rebasegit push --force,并确保在进行重要操作之前备份数据。删除提交记录可能会导致团队协作问题,因此请与团队协商并采取适当的措施。

二、Git Bash进行提交

在 Git 中查看当前分支、查看暂存区(也称为索引),以及进行对新文件的提交:

1. 查看当前分支:

使用 git branch 命令可以查看当前分支。分支前面带有星号 * 的表示当前所在的分支。

bash 复制代码
git branch

2. 查看暂存区(索引):

使用 git status 命令可以查看工作目录、暂存区和最近提交之间的状态。它会列出已修改但尚未暂存的文件以及已暂存但尚未提交的文件。

bash 复制代码
git status

3. 对新文件进行提交:

假设有新创建的文件并要将其提交到 Git 仓库,可以按以下步骤操作:

  • 创建新文件: 在工作目录中创建新文件,例如 new_file.txt

  • 将新文件添加到暂存区: 使用 git add 命令将新文件添加到暂存区。

    bash 复制代码
    git add new_file.txt
  • 查看暂存区状态: 使用 git status 命令查看新文件是否已添加到暂存区。

    bash 复制代码
    git status

    此时,应该看到新文件已被添加到暂存区。

  • 提交新文件: 使用 git commit 命令提交新文件。

    bash 复制代码
    git commit -m "Add new_file.txt"

    -m 后面的引号内,可以输入有意义的提交消息,描述对新文件所做的更改。

  • 查看提交历史: 使用 git log 命令可以查看提交历史,包括刚刚提交的新文件。

    bash 复制代码
    git log

    这将显示最近的提交记录,包括作者、日期和提交消息。

注意,每次添加、修改或删除文件后,都需要使用相应的 git addgit commit 命令来记录更改并提交到版本控制系统。

三、更改commit的消息

如果在执行 git commit -m "Add new_file.txt" 后想要修改提交消息,可以使用 --amend 选项来修改最新的提交消息。

  1. 打开终端或命令行窗口,并导航到包含 Git 存储库的目录。

  2. 在命令行中运行以下命令来打开文本编辑器以修改提交消息:

    bash 复制代码
    git commit --amend

    这将打开默认文本编辑器,显示最新的提交消息,可编辑提交消息。

  3. 在编辑器中,修改提交消息为新消息。然后保存并关闭编辑器。

  4. Git 会将新的提交消息应用到最新的提交中。

  5. 如果已经将更改推送到远程仓库,可能要使用 --force 选项来强制推送更改,以更新远程仓库的提交历史。

例如:

bash 复制代码
# 执行 git commit --amend 后打开编辑器,修改提交消息
git commit --amend
# 保存并关闭编辑器

# 如果已经推送到远程仓库,使用 --force 选项进行强制推送
git push --force origin your-branch-name

我们应谨慎使用 git commit --amendgit push --force,特别是在协作的情况下,以避免不必要的问题。修改提交消息通常用于修复最近的提交,而不是用于更改过去的提交历史。

相关推荐
逛逛GitHub11 小时前
刚刚!Open AI 宣布开源?
github
不是伍壹14 小时前
【R语言】GitHub Copilot安装-待解决
github·copilot
虾饺爱下棋15 小时前
pycharm上传github问题:rejected
人工智能·深度学习·github
鸠摩智首席音效师15 小时前
如何在 GitHub 中创建一个空目录 ?
github
Mr.W.T18 小时前
Spring Boot “约定大于配置”
github
2401_8260976219 小时前
同步&异步日志系统-日志落地模块的实现
c++·git·vim
半旧夜夏19 小时前
阿里云IOT消息处理
java·ide·git·物联网·spring·阿里云
我们的五年21 小时前
【Git版本控制器】第三弹——版本回退,撤销修改,删除文件
大数据·linux·git
一名嵌入式糕手21 小时前
Git从基础到进阶
git
不cong明的亚子1 天前
github用户名密码登陆失效了
git·github