行者孙Python

立项篇-Day3|初次交付:git status 查看状态,git add 暂存,git commit 提交

📖 知识点

1. 交付前的 "三区" 概念

区域说明生活比喻
工作区你正在改的代码桌上的草稿
暂存区(staging)git add 后,准备提交放进 "待寄信封"
版本库git commit 后,正式存档寄出的存档

流程:改代码(工作区)→ git add(暂存区)→ git commit(版本库),代码才被 Git 正式记住。

2. git status:查看状态

git status

 

运行示例:

On branch master

Untracked files:
       外卖App.py

nothing added to commit but untracked files present

 

显示当前有哪些改动。"Untracked" = 还没被 Git 跟踪的新文件。

3. git add:暂存(把文件放进 "待寄信封")

git add 外卖App.py     # 暂存指定文件
git add .              # 暂存所有改动(.表示全部)

 

运行示例(再 git status):

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   外卖App.py

 

文件从 "Untracked" 变成 "to be committed",已进入暂存区。

4. git commit:提交(正式存档)

git commit -m "提交说明"

 

git commit -m "首次提交:创建外卖App.py"

 

运行示例:

[master (root-commit) abc1234] 首次提交:创建外卖App.py
 1 file changed, 0 insertions(+), 0 deletions(-)

 

-m 后面写提交说明(做了什么),这个说明很重要,以后靠它识别每次存档。提交后有了一串 ID(abc1234),这就是一个正式的版本。

⚠️ 易错提醒

  1. 提交前一定要先 git add,直接 commit 会提示 "nothing to commit"

  2. git commit -m "说明" 的 -m 不能省,说明要写清楚做了什么

  3. 每次提交 = 一个存档点,以后能回到这里

⚔️ 剧情 Kata 实战任务

任务需求:

  1. 在 "外卖 App" 仓库里,往 "外卖 App.py" 写一点内容(用 echo 或 vim)

  2. 用 git status 看状态(文件已修改 / 未跟踪)

  3. 用 git add 外卖App.py 暂存

  4. 用 git commit -m "首次提交:创建外卖App.py" 提交

  5. 用 git log 查看第一条提交记录(首次存档成功)

参考代码(在终端依次敲)

# 0. 进到项目仓库
cd ~/外卖App

# 1. 给代码文件写点内容
echo "def 下单(): pass" > 外卖App.py

# 2. 查看状态
git status

# 3. 暂存
git add 外卖App.py

# 4. 提交(正式存档)
git commit -m "首次提交:创建外卖App.py"

# 5. 查看提交历史
git log

 

运行示例:

user@linux:~/外卖App$ git status
Untracked files:
       外卖App.py

user@linux:~/外卖App$ git add 外卖App.py
user@linux:~/外卖App$ git commit -m "首次提交:创建外卖App.py"
[master (root-commit) a1b2c3d] 首次提交:创建外卖App.py
 1 file changed, 1 insertion(+)

user@linux:~/外卖App$ git log
commit a1b2c3d (HEAD -> master)
Author: 小孙 <sun@example.com>
Date:   ...

    首次提交:创建外卖App.py

 

💡 完成动作示意:

  1. 写内容 → git status 显示 "Untracked"(没跟踪)

  2. git add → 进入暂存区(变成 "to be committed")

  3. git commit -m "首次提交..." → 正式存档,生成版本 ID a1b2c3d

  4. git log → 看到第一条提交记录,"初次交付" 完成!

🧠 思考题

  1. 提交代码的完整三步是哪三步?为什么不能直接 commit(跳过 add)?

  2. git commit -m "说明" 里的说明为什么重要?团队协作时没写清说明会怎样?

‹ 返回目录
🏠首页 Python 📦资源 👤关于我