git常用操作

1. 查看暂存区内容

git status

git status 的输出会清晰地分为几个部分:

Changes to be committed: (将被提交的变更)

  • 这部分就是您的暂存区内容。 列在这里的文件表示它们已经被 git add,等待下一次 git commit

Changes not staged for commit: (尚未暂存的变更)

  • 这部分列出了您已经修改、但还没有 git add 的文件。

Untracked files: (未跟踪的文件)

  • 这部分是项目中新创建的、Git 还从未管理过的文件。
复制代码
(base) root@...# git status
On branch main
Your branch is up to date with 'origin/main'.

Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        modified:   README.md         <-- 这个文件在暂存区
        new file:   new_feature.py    <-- 这个新文件也在暂存区

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   config.yaml       <-- 这个文件被修改了,但未暂存

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        temp.log                      <-- 这个文件是全新的,未被跟踪

2. 查看暂存区里的文件具体修改了哪些代码行

git diff --staged

  • --- 开头的行代表旧文件(来自上次提交)。
  • +++ 开头的行代表新文件(来自暂存区)。
  • - (通常是红色) 开头的行表示被删除的内容。
  • + (通常是绿色) 开头的行表示被添加的内容。
复制代码
diff --git a/README.md b/README.md
index 3b18e51..5a13240 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,4 @@
 # RK_series Project
 This is a project for RK series development.
-Initial version.
+
+Version 1.1, with new features.

3. 清空暂存区

复制代码
# 把暂存区恢复到干净状态
git reset

4. 查看最近的提交历史,撤销

git log --oneline

git reset

复制代码
# 查看最近的提交历史,找到添加大文件之前的那个提交的 commit hash
git log --oneline

# 假设添加大文件之前的那个提交是 a1b2c3d
# 我们要撤销它之后的所有提交
git reset a1b2c3d

# 或者,如果您确定只搞砸了最近一次提交,可以简单地:
git reset HEAD~1

成功地将 test 分支的"指针"(HEAD)移回到了 23b8481 这个提交上。这个提交是远程仓库 origin/test 的最新版本。所有在它之后的提交(9a41444, a47ebc7, 970058f)都已经被撤销了。

5. 忽略上传指定文件

在项目目录下新建 .gitignore 文件:

然后先add .gitignore ,再add .要传的文件夹,git会自动跳过这个文件夹下所有的.onnx 和 .rknn 和 .pt。

6. win到linux换行符警告

  • CRLF :Windows 系统使用的换行符,表示回车符(\r)和换行符(\n)的组合。
  • LF :Unix 和 Linux 系统使用的换行符,仅表示换行符(\n)。

git config --global core.autocrlf true

设置为 true (Windows 上使用 CRLF,但提交时转换为 LF

相关推荐
辰风沐阳7 分钟前
git 忽略大小写(重命名文件)
大数据·git·elasticsearch
天麓29 分钟前
git rebase 举例
git
艺杯羹37 分钟前
Git文件状态管理:从基础到进阶的完整指南
大数据·git·elasticsearch·版本控制·git教程·代码管理·git基础
Tony Bai1 小时前
Git 即数据库:Beads (bd) —— 专为 AI Agent 打造的分布式任务追踪引擎
数据库·人工智能·分布式·git
是店小二呀1 小时前
Git多人协作深度实践指南
大数据·git·elasticsearch
Warren981 小时前
Allure 常用装饰器:实战用法 + 最佳实践(接口自动化)
运维·服务器·git·python·单元测试·自动化·pytest
刺客xs18 小时前
git 入门常用命令
大数据·git·elasticsearch
LostSpeed19 小时前
git - github工程中不能包含大文件
git·github
pzx_00119 小时前
【GIT】删除远程文件
git
小白_ysf20 小时前
Git 命令操作完整指南(实际工作中常用命令)
git·代码上传