Git - 进行更改
简介
你好,有抱负的程序员们!今天,我们将深入Git的精彩世界,学习如何在我们的项目中执行更改。作为你友好的计算机科学老师,我将在这一旅程中为你提供清晰的解释、大量的示例,也许还有一两个笑话。所以,戴上你的虚拟安全帽,让我们开始建立Git技能吧!
理解Git基础
在我们跳到进行更改之前,让我们快速回顾一下Git是什么。Git就像是你的代码的时间机器。它允许你跟踪更改、与他人协作,甚至可以回到项目的前一个版本。酷炫吧?
Git工作流程
在Git中,我们通常会遵循以下工作流程:
- 对文件进行更改
- 将更改暂存
- 提交更改
- 推送更改(如果是与远程仓库协作)
现在,让我们分解这些步骤,看看如何执行每一个步骤。
对你的文件进行更改
我们在Git旅程中的第一步实际上是对我们的项目文件进行更改。这可能包括添加新代码、修改现有代码,甚至是删除文件。让我们从一个简单的例子开始。
假设我们有一个名为hello.py
的文件,内容如下:
print("Hello, World!")
现在,假设我们想让它更具个性化。我们将更改它为:
name = "Alice"
print(f"Hello, {name}!")
太好了!我们已经进行了第一次更改。但是Git如何知道这个更改呢?
检查你的仓库状态
为了查看我们所做的更改,我们可以使用git status
命令。这就像问Git,“嘿,有什么新变化吗?”
git status
你可能会看到这样的信息:
位于分支 main
更改尚未暂存以供提交:
(使用 "git add <文件>..." 更新将要提交的内容)
(使用 "git restore <文件>..." 来丢弃工作目录中的更改)
已修改: hello.py
没有添加更改以供提交(使用 "git add" 和/或 "git commit -a")
Git告诉我们我们已经修改了hello.py
,但我们还没有暂存这些更改。
暂存更改
现在我们已经进行了更改,我们需要告诉Git我们想要在下一个提交中包含哪些更改。这个过程被称为暂存。
要将我们对hello.py
的更改暂存,我们使用git add
命令:
git add hello.py
如果我们想一次暂存所有更改的文件,我们可以使用:
git add .
小贴士:点(.)意味着“当前目录中的所有内容。”
暂存后,如果我们再次运行git status
,我们将看到:
位于分支 main
要提交的更改:
(使用 "git restore --staged <文件>..." 来取消暂存)
已修改: hello.py
太好了!我们的更改现在已经被暂存,准备好提交了。
提交更改
提交就像是在项目的一个特定时间点拍摄快照。这是一种说,“我想记住我的项目的这个版本”的方式。
要提交我们的暂存更改,我们使用git commit
命令:
git commit -m "使问候更具个性化"
-m
标志允许我们直接在命令行中添加提交信息。总是尽量写清楚、描述性的提交信息。你的未来自己(和你的队友)会感谢你的!
查看提交历史
想看看你所有的提交记录吗?使用git log
命令:
git log
这会显示你从最近的提交开始的提交列表:
提交 1234567890abcdef1234567890abcdef12345678 (HEAD -> main)
作者: 你的名字 <[email protected]>
日期: Mon Jun 12 10:00:00 2023 +0000
使问候更具个性化
提交 abcdef1234567890abcdef1234567890abcdef12
作者: 你的名字 <[email protected]>
日期: Sun Jun 11 09:00:00 2023 +0000
初始提交
推送更改(对于远程仓库)
如果你在与远程仓库(比如GitHub)协作,你会想要与其他人分享你的更改。这时git push
命令就派上用场了:
git push origin main
这会将你的提交推送到'origin'远程仓库的'main'分支。
常见Git命令
以下是我们在本文中涵盖的Git命令的便捷表格:
命令 | 描述 |
---|---|
git status |
检查你的仓库状态 |
git add <文件> |
为特定文件暂存更改 |
git add . |
暂存所有更改 |
git commit -m "信息" |
提交暂存的更改并附带信息 |
git log |
查看提交历史 |
git push origin <分支> |
将提交推送到远程仓库 |
结论
就这样,伙计们!你已经学会了Git进行更改的基础。记住,熟能生巧。不要害怕实验和犯错误——这是我们学习的方式!
在我多年的教学过程中,我看到了学生从Git新手变成了版本控制的大师。我最喜欢的时刻之一是当一个学生大声说,“Git就像是视频游戏中的保存点,但用于代码!”而你知道吗?他们完全正确!
所以,大胆地前进,进行更改,经常提交,愿你的代码总是第一次编译成功(但如果不是,别担心——这就是调试的用途)。
快乐编码,下节课见,届时我们将探索更多Git的魔力!
Credits: Image by storyset