Git -提交更改
介绍
你好,有抱负的程序设计师们!今天,我们将深入了解Git中最基本的概念之一:提交更改。作为你亲切的计算机科学老师,我将一步一步地引导你完成这个 essential 过程。如果你是编程新手,不用担心——我们将从基础开始,逐步学习。在本教程结束时,你将能够像专业人士一样提交更改!
什么是提交?
在我们深入了解如何操作之前,让我们先了解一下提交是什么。在Git中,提交就像是在项目中的特定时间点拍摄快照。这是保存你的工作并跟踪代码库中更改的一种方式。把它想象成在视频游戏中创建一个检查点——如果需要,你总是可以返回到那个点。
提交的重要性
提交是项目历史的构建块。它们允许你:
- 跟踪时间上的更改
- 与他人有效协作
- 如果出现问题,恢复到以前的版本
- 理解项目的演变
现在我们知道提交的重要性,让我们来学习如何创建提交!
Git提交基本工作流程
第一步:检查状态
在提交之前,检查你的仓库状态总是一个好主意。这会告诉你哪些文件已被修改、添加或删除。
git status
你可能会看到这样的内容:
On branch main
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: hello_world.py
no changes added to commit (use "git add" and/or "git commit -a")
这个输出告诉我们,我们已经修改了一个名为 hello_world.py
的文件,但我们还没有将其暂存以供提交。
第二步:暂存更改
在我们提交之前,我们需要暂存我们的更改。暂存就像在结账前将商品放入购物车。
要暂存所有已更改的文件:
git add .
要暂存特定文件:
git add hello_world.py
暂存后,如果我们再次运行 git status
,我们会看到:
On branch main
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: hello_world.py
第三步:提交更改
现在我们已经暂存了我们的更改,我们准备提交!
git commit -m "添加hello world功能"
-m
标志允许我们在命令行中直接添加提交消息。总是写清晰、简洁的消息来描述你做了哪些更改。
如果你现在运行 git status
,你会看到:
On branch main
nothing to commit, working tree clean
恭喜你!你已经完成了你的第一个提交!
高级提交技巧
修改提交
有时,你可能忘记添加一个文件或想更改你的提交消息。你不需要创建一个新的提交,你可以修改最后一个提交:
git commit --amend
这将打开你的默认文本编辑器,你可以在其中修改提交消息。如果你要添加忘记的文件:
git add forgotten_file.py
git commit --amend
交互式暂存
为了更控制你正在提交的内容,你可以使用交互式暂存:
git add -i
这将打开一个交互式菜单,你可以在其中选择性地暂存文件的一部分。
提交的最佳实践
以下是在提交时遵循的最佳实践:
实践 | 描述 |
---|---|
频繁提交 | 进行小而频繁的提交,而不是大而不频繁的提交 |
写清晰的消息 | 在提交消息中使用现在时态并描述 |
每个提交一个功能 | 每个提交应代表一个逻辑更改 |
提交前测试 | 确保你的代码在提交前能正常工作 |
审查你的更改 | 使用 git diff 在提交前审查更改 |
查看提交历史
要查看你的提交历史,使用:
git log
这将显示按逆序排列的所有提交列表。你将看到类似的内容:
commit 1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q8r9s0t
Author: 你的名字 <[email protected]>
Date: Mon Jan 1 12:00:00 2023 +0000
添加hello world功能
commit 9s8r7q6p5o4n3m2l1k0j9i8h7g6f5e4d3c2b1a
Author: 你的名字 <[email protected]>
Date: Sun Dec 31 23:59:59 2022 +0000
初始提交
结论
好了,朋友们!你刚刚了解了Git中提交更改的来龙去脉。记住,提交就像在游戏中保存进度——经常做,以免丢失你的辛勤工作。在你继续编程之旅时,你会发现良好的提交习惯会为你节省时间和避免未来的头痛。
熟能生巧,所以不要害怕尝试这些命令。在你意识到之前,你将在梦中提交更改(尽管我不建议在梦中编程——相信我,我试过,编译错误是噩梦般的!)。
继续编码,继续提交,最重要的是,保持乐趣!下次见,这是你亲切的计算机科学老师说的。快乐提交!
Credits: Image by storyset