Git 版本管理入门教程:命令行 + PyCharm + Gitee 远程仓库实战

摘要

本文适合刚接触 Git 的初学者,重点讲清楚 Git 是什么、为什么要用 Git、怎么用 Git 管理代码版本。

文章会分别演示两种常见使用方式:命令行操作 Git在 PyCharm 中操作 Git

远程仓库平台使用 Gitee ,内容覆盖本地初始化、提交代码、推送远程、拉取代码、分支管理、冲突处理等常用场景。

看完后,你可以独立完成一个项目从本地开发到上传 Gitee 的完整流程。


一、为什么要学 Git 版本管理

在没有 Git 之前,很多新手保存项目可能是这样的:

复制代码
demo_v1
demo_v2
demo_最终版
demo_最终版2
demo_最终版_不要删

看起来能用,但项目一复杂就会出现问题:

  • 不知道哪一版代码是正确的;

  • 改坏代码后,不知道怎么恢复;

  • 多人开发时,互相覆盖代码;

  • 换电脑后,项目不好同步;

  • 项目上线后,无法快速定位是哪次修改引入了 bug。

Git 解决的就是这些问题。

Git 官方文档把 Git 定义为一个快速、可扩展的分布式版本控制系统,它提供了丰富的命令来管理代码历史、分支、提交和协作流程。(Git中文网)

我的理解是:

Git 就是代码项目的"时间机器"。

你每提交一次代码,就相当于给项目保存一个快照。以后代码出问题,可以查看历史,也可以回退到之前的版本。

而 Gitee 的作用是把本地 Git 仓库放到远程平台上,方便备份、协作和代码托管。Gitee 官方文档说明,目前 Gitee 支持通过 HTTPSSSH 协议进行代码推送和拉取。(Gitee帮助中心)


二、先用一句话理解它

Git 是一个帮我们记录代码修改历史的工具,Gitee 是一个帮我们存放远程 Git 仓库的平台。

也可以这样理解:

复制代码
Git:管本地版本
Gitee:管远程托管
PyCharm:用图形界面帮你操作 Git

真正开发时,三者通常配合使用:

复制代码
写代码 -> Git 提交版本 -> 推送到 Gitee -> 其他电脑或同事拉取代码

三、核心概念解释

1. 工作区

工作区就是你正在写代码的项目目录。

比如:

复制代码
git-demo
├── main.py
├── README.md
└── .gitignore

你在 PyCharm 里修改 main.py,这个文件所在的目录就是工作区。

一句话理解:

复制代码
工作区 = 你正在编辑代码的地方

2. 暂存区

暂存区可以理解为"准备提交的文件列表"。

比如你改了 3 个文件:

复制代码
main.py
README.md
config.py

但你这次只想提交 main.py,那就只把 main.py 加入暂存区:

复制代码
git add main.py

如果想把所有修改都加入暂存区:

复制代码
git add .

我的理解是:

复制代码
git add 不是提交代码,而是告诉 Git:这些文件我准备提交。

3. 本地仓库

本地仓库就是你电脑上的 Git 仓库。

执行:

复制代码
git commit -m "提交说明"

之后,Git 会把暂存区中的内容保存成一个版本。

一句话理解:

复制代码
git commit = 给当前代码保存一个版本快照

4. 远程仓库

远程仓库就是 Gitee 上的仓库。

本地代码提交后,如果要上传到 Gitee,需要执行:

复制代码
git push

如果要从 Gitee 拉取最新代码,需要执行:

复制代码
git pull

Gitee 支持 HTTPS 和 SSH 两种常见方式。HTTPS 对新手更直接;SSH 需要先配置 SSH Key,但配置好后,通常推送和拉取时不需要反复输入账号密码。(Gitee帮助中心)


5. 分支

分支可以理解为"代码的平行世界"。

比如主分支是稳定版本:

复制代码
main

你要开发登录功能,可以新建一个分支:

复制代码
feature-login

这样你在 feature-login 分支上怎么改,都不会直接影响 main 分支。

常见分支命令:

复制代码
git branch
git checkout -b feature-login
git checkout main
git merge feature-login

我的建议是:

复制代码
主分支放稳定代码,功能分支放正在开发的代码。

四、准备工作

1. 安装 Git

安装完成后,打开命令行,输入:

复制代码
git --version

如果能看到版本号,说明 Git 安装成功:

复制代码
git version 54.xx.x

2. 安装 PyCharm

本文使用 PyCharm 操作 Git。

复制代码
https://www.jetbrains.com/zh-cn/pycharm/download/?section=windows

JetBrains 的 PyCharm 文档中也提供了 Git 提交、推送等版本控制操作说明,比如 Commit、Commit and Push、Push 等功能入口。(JetBrains)


3. 注册 Gitee 账号

需要提前准备:

复制代码
Gitee 账号
一个空的 Gitee 仓库

远程仓库地址一般长这样:

HTTPS:

复制代码
https://gitee.com/用户名/仓库名.git

SSH:

复制代码
git@gitee.com:用户名/仓库名.git

初学者建议先用 HTTPS。

如果后面经常推送代码,再配置 SSH。


4. 配置 Git 用户信息

第一次使用 Git,需要配置用户名和邮箱:

复制代码
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"

查看配置:

复制代码
git config --global --list

如果看到类似内容,说明配置成功:

复制代码
user.name=zhangsan
user.email=zhangsan@example.com

这里的用户名和邮箱会记录到每一次 Git 提交中。


五、一步一步实战

下面分两部分:

复制代码
第一部分:命令行实现 Git + Gitee
第二部分:PyCharm 实现 Git + Gitee

建议先学命令行,因为 PyCharm 的图形化操作,本质上也是在调用 Git 命令。


第一部分:命令行实现 Git + Gitee

1. 创建项目目录

复制代码
mkdir git-demo
cd git-demo

创建一个 Python 文件:

复制代码
echo print("Hello Git") > main.py

也可以手动创建 main.py,内容如下:

复制代码
print("Hello Git")

这一步做的是:准备一个普通项目目录。

新手容易出错的地方:

复制代码
命令行没有进入项目目录,就开始执行 git init。

可以用下面命令确认当前位置:

复制代码
pwd

Windows CMD 可以使用:

复制代码
cd

2. 初始化 Git 仓库

在项目根目录执行:

复制代码
git init

执行后,当前目录会生成一个隐藏文件夹:

复制代码
.git

这个 .git 文件夹保存了 Git 仓库信息,不要随便删除。

查看状态:

复制代码
git status

你可能会看到:

复制代码
Untracked files:
  main.py

意思是:

复制代码
Git 发现了 main.py,但还没有正式管理它。

3. 添加文件到暂存区

添加单个文件:

复制代码
git add main.py

添加所有文件:

复制代码
git add .

查看状态:

复制代码
git status

可能看到:

复制代码
Changes to be committed:
  new file: main.py

说明文件已经进入暂存区。

我的理解是:

复制代码
git add = 把文件放进"待提交清单"

4. 提交到本地仓库

执行:

复制代码
git commit -m "初始化项目"

查看提交记录:

复制代码
git log

简洁查看:

复制代码
git log --oneline

可能看到:

复制代码
a1b2c3d 初始化项目

这就说明第一个版本已经保存成功。

注意,提交说明不要随便写:

不推荐:

复制代码
git commit -m "修改"
git commit -m "更新"
git commit -m "提交"

推荐:

复制代码
git commit -m "初始化 Python 项目"
git commit -m "新增用户登录功能"
git commit -m "修复密码为空时的校验问题"

好的提交说明能帮助你以后快速定位问题。


5. 在 Gitee 创建远程仓库

进入 Gitee,创建一个新仓库。

建议新手这样设置:

复制代码
仓库名:git-demo
是否开源:按需要选择
初始化 README:不勾选
初始化 .gitignore:不勾选

为什么建议不勾选初始化文件?

因为本地已经有提交记录,如果远程仓库也自动生成了 README,本地和远程就会有两份不同历史,新手第一次 push 时容易遇到冲突。

简单原则:

复制代码
本地已有项目 -> Gitee 建空仓库
Gitee 已有项目 -> 本地用 git clone

6. 绑定 Gitee 远程仓库

复制 Gitee 仓库地址。

HTTPS 示例:

复制代码
git remote add origin https://gitee.com/你的用户名/git-demo.git

SSH 示例:

复制代码
git remote add origin git@gitee.com:你的用户名/git-demo.git

查看远程地址:

复制代码
git remote -v

如果看到类似内容,说明绑定成功:

复制代码
origin  https://gitee.com/你的用户名/git-demo.git (fetch)
origin  https://gitee.com/你的用户名/git-demo.git (push)

这里的 origin 是远程仓库默认别名。


7. 推送代码到 Gitee

先查看当前分支名:

复制代码
git branch

如果当前分支是 main

复制代码
git push -u origin main

如果当前分支是 master

复制代码
git push -u origin master

-u 的作用是建立本地分支和远程分支的关联。

第一次执行后,以后可以直接:

复制代码
git push

新手容易出错:

复制代码
本地分支叫 master,但推送时写成 main。

解决方法是先看当前分支:

复制代码
git branch

如果想把分支统一改成 main

复制代码
git branch -M main
git push -u origin main

8. 修改代码后再次提交

修改 main.py

复制代码
print("Hello Git")
print("第二次提交")

查看文件状态:

复制代码
git status

查看具体改了什么:

复制代码
git diff

提交并推送:

复制代码
git add .
git commit -m "新增第二行输出"
git push

日常开发最常见流程就是:

复制代码
git status
git add .
git commit -m "提交说明"
git push

9. 从 Gitee 克隆项目

如果你换了一台电脑,想把 Gitee 上的项目下载下来:

复制代码
git clone https://gitee.com/你的用户名/git-demo.git

或者使用 SSH:

复制代码
git clone git@gitee.com:你的用户名/git-demo.git

进入项目目录:

复制代码
cd git-demo

查看状态:

复制代码
git status

git clone 会自动帮你配置远程仓库地址,一般不需要再执行 git remote add origin


10. 拉取远程代码

如果远程仓库有新代码,本地需要同步:

复制代码
git pull

多人开发时,建议每次开始写代码前先执行:

复制代码
git pull

完整开发流程:

复制代码
git pull
# 修改代码
git status
git add .
git commit -m "提交说明"
git push

11. 创建和合并分支

创建并切换分支:

复制代码
git checkout -b feature-login

查看分支:

复制代码
git branch

提交功能代码:

复制代码
git add .
git commit -m "新增登录功能"

切回主分支:

复制代码
git checkout main

如果你的主分支叫 master

复制代码
git checkout master

合并分支:

复制代码
git merge feature-login

推送主分支:

复制代码
git push

新手建议记住:

复制代码
开发新功能 -> 新建分支
功能稳定后 -> 合并到主分支

12. 回退和撤销修改

撤销工作区修改

如果文件改坏了,但还没有 git add

复制代码
git restore main.py

旧写法也可以:

复制代码
git checkout -- main.py

撤销暂存区文件

如果已经执行了 git add,但还没有提交:

复制代码
git reset HEAD main.py

或者:

复制代码
git restore --staged main.py

回退到历史版本

先查看历史:

复制代码
git log --oneline

例如:

复制代码
c3d4e5f 新增登录功能
a1b2c3d 初始化项目

回退到某个版本:

复制代码
git reset --hard a1b2c3d

注意:

复制代码
git reset --hard 会丢弃当前修改,新手使用前一定先执行 git status。

第二部分:在 PyCharm 中实现 Git + Gitee

1. 配置 PyCharm 的 Git 路径

打开 PyCharm:

复制代码
File -> Settings -> Version Control -> Git

Git executable path 一般类似:

Windows:

复制代码
C:\Program Files\Git\bin\git.exe

点击:

复制代码
Test

如果能看到 Git 版本号,说明 PyCharm 已经识别 Git。


2. 在 PyCharm 中启用 Git

打开项目后,点击:

复制代码
VCS -> Enable Version Control Integration

选择:

复制代码
Git

点击 OK。

这一步相当于命令行中的:

复制代码
git init

启用后,PyCharm 中的文件颜色可能会变化:

复制代码
红色:新文件,还没有被 Git 管理
蓝色:已修改文件
绿色:新文件,已经加入暂存
普通颜色:没有修改

不同主题颜色可能略有差异,但含义类似。


3. 在 PyCharm 中添加文件

选中文件或项目目录,右键:

复制代码
Git -> Add

这一步相当于:

复制代码
git add .

也可以在 Commit 窗口中勾选需要提交的文件。

新手注意:

复制代码
不是所有文件都必须提交,虚拟环境、缓存文件、日志文件通常不要提交。

4. 在 PyCharm 中提交代码

点击菜单:

复制代码
Git -> Commit

或者使用快捷键:

复制代码
Ctrl + K

填写提交说明,例如:

复制代码
初始化 Python 项目

然后点击:

复制代码
Commit

这一步相当于:

复制代码
git commit -m "初始化 Python 项目"

JetBrains 文档中也说明,当你添加了新文件或修改了 Git 管理下的文件,并确认当前状态后,就可以提交并推送这些工作成果。(JetBrains)


5. 在 PyCharm 中绑定 Gitee 远程仓库

菜单路径:

复制代码
Git -> Manage Remotes

点击加号,添加:

复制代码
Name: origin
URL: https://gitee.com/你的用户名/git-demo.git

如果使用 SSH:

复制代码
URL: git@gitee.com:你的用户名/git-demo.git

这一步相当于:

复制代码
git remote add origin 远程仓库地址

添加完成后,可以在 PyCharm 的 Terminal 中确认:

复制代码
git remote -v

6. 在 PyCharm 中推送代码到 Gitee

点击:

复制代码
Git -> Push

快捷键通常是:

复制代码
Ctrl + Shift + K

确认远程仓库地址和分支后,点击 Push。

如果第一次推送失败,可以在 PyCharm Terminal 中手动执行:

复制代码
git push -u origin main

或者:

复制代码
git push -u origin master

7. 在 PyCharm 中拉取远程代码

点击:

复制代码
Git -> Pull

选择远程分支后执行 Pull。

这一步相当于:

复制代码
git pull

如果多人协作,建议每次写代码前先 Pull。


8. 在 PyCharm 中查看代码差异

PyCharm 查看修改很方便。

可以右键文件:

复制代码
Git -> Show Diff

也可以在 Commit 窗口里点击文件查看差异。

这一步相当于:

复制代码
git diff

我的经验是:

复制代码
提交前一定看一眼 Diff,确认没有把测试代码、临时打印、无关文件提交上去。

9. 在 PyCharm 中创建分支

点击右下角当前分支名,比如:

复制代码
main

选择:

复制代码
New Branch

输入:

复制代码
feature-login

点击创建。

这一步相当于:

复制代码
git checkout -b feature-login

开发完成后,可以通过分支菜单切回主分支,再进行 Merge。


六、完整代码

下面用一个简单 Python 项目演示 Git 管理。

项目结构:

复制代码
git-demo
├── main.py
├── calculator.py
├── README.md
└── .gitignore

main.py

复制代码
from calculator import add, subtract


def main():
    print("Git 版本管理示例")
    print("3 + 2 =", add(3, 2))
    print("3 - 2 =", subtract(3, 2))


if __name__ == "__main__":
    main()

calculator.py

复制代码
def add(a, b):
    """返回两个数的和"""
    return a + b


def subtract(a, b):
    """返回两个数的差"""
    return a - b

README.md

复制代码
# Git Demo

这是一个用于学习 Git 版本管理的 Python 示例项目。

## 功能

- 加法计算
- 减法计算

## 运行方式

```bash
python main.py


### .gitignore

```gitignore
__pycache__/
*.pyc
.venv/
venv/
.idea/
.DS_Store
*.log

完整命令流程:

复制代码
# 进入项目目录
cd git-demo

# 初始化 Git 仓库
git init

# 查看状态
git status

# 添加文件
git add .

# 提交到本地仓库
git commit -m "初始化 Python 示例项目"

# 绑定 Gitee 远程仓库
git remote add origin https://gitee.com/你的用户名/git-demo.git

# 查看远程地址
git remote -v

# 推送到 Gitee
git push -u origin main

如果当前分支是 master

复制代码
git push -u origin master

七、代码解释

这个项目本身很简单,核心目的是演示 Git 如何管理代码变化。

1. main.py 负责程序入口

复制代码
from calculator import add, subtract

这行代码从 calculator.py 中导入函数。

复制代码
if __name__ == "__main__":
    main()

这表示直接运行 main.py 时,才执行 main() 函数。


2. calculator.py 负责具体功能

复制代码
def add(a, b):
    return a + b

这个函数负责加法。

复制代码
def subtract(a, b):
    return a - b

这个函数负责减法。

后面如果新增乘法:

复制代码
def multiply(a, b):
    return a * b

Git 就能检测到 calculator.py 文件发生了变化。

你可以执行:

复制代码
git status
git diff

查看变化。


3. README.md 负责项目说明

README 是别人打开你 Gitee 仓库后最先看到的内容。

建议写清楚:

复制代码
项目是做什么的
如何安装
如何运行
主要功能
注意事项

一个项目即使代码简单,也建议保留 README。


4. .gitignore 负责忽略不需要提交的文件

比如 Python 会生成缓存:

复制代码
__pycache__/
*.pyc

PyCharm 可能会生成配置文件:

复制代码
.idea/

虚拟环境目录:

复制代码
venv/
.venv/

这些通常不需要提交到远程仓库。

如果某个文件已经被 Git 跟踪了,再写进 .gitignore 不会自动生效。

需要先取消跟踪:

复制代码
git rm --cached 文件名

例如:

复制代码
git rm --cached .idea/workspace.xml
git commit -m "移除不需要提交的 PyCharm 配置文件"

八、常见问题

1. git 不是内部或外部命令

原因:

复制代码
Git 没安装,或者环境变量没配置好。

解决:

复制代码
git --version

如果没有版本号,重新安装 Git,并重新打开命令行。


2. 提交时报 Please tell me who you are

原因:

复制代码
没有配置 Git 用户名和邮箱。

解决:

复制代码
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"

3. push 到 Gitee 时提示权限不足

常见原因:

复制代码
远程地址写错
Gitee 账号没有仓库权限
HTTPS 认证失败
SSH Key 没配置

先检查远程地址:

复制代码
git remote -v

如果地址错了,修改:

复制代码
git remote set-url origin 新仓库地址

Gitee 文档说明,使用 SSH 协议前需要先配置并添加 SSH key;HTTPS 和 SSH 在 clonepullpush 等命令使用上差异不大,主要差异在地址和认证方式。(Gitee帮助中心)


4. push 时提示 rejected 或 fetch first

原因:

复制代码
远程仓库有本地没有的提交。

解决:

复制代码
git pull
git push

如果出现冲突,先解决冲突,再提交。


5. git pull 后出现冲突

冲突内容一般长这样:

复制代码
<<<<<<< HEAD
本地代码
=======
远程代码
>>>>>>> origin/main

意思是:

复制代码
同一个位置,本地和远程都改了,Git 不知道该保留哪一份。

解决方法:

  1. 手动编辑文件;

  2. 删除冲突标记;

  3. 保留正确代码;

  4. 重新提交。

命令:

复制代码
git add .
git commit -m "解决代码冲突"
git push

6. PyCharm 看不到 Git 菜单

常见原因:

复制代码
PyCharm 没配置 Git 路径
当前项目没有启用 Git
当前目录不是 Git 仓库

解决:

复制代码
File -> Settings -> Version Control -> Git

检查 Git 路径。

然后:

复制代码
VCS -> Enable Version Control Integration -> Git

7. main 和 master 到底用哪个

两者都是分支名。

以前很多项目默认叫:

复制代码
master

现在很多项目默认叫:

复制代码
main

查看当前分支:

复制代码
git branch

根据实际分支推送:

复制代码
git push -u origin main

或者:

复制代码
git push -u origin master

如果想改成 main:

复制代码
git branch -M main
git push -u origin main

8. git add . 会不会提交垃圾文件

会。

所以要配置 .gitignore

Python 项目建议至少忽略:

复制代码
__pycache__/
*.pyc
venv/
.venv/
.idea/
*.log

新手要记住:

复制代码
git add . 很方便,但提交前一定看 git status 和 diff。

九、我的理解与经验总结

1. Git 不是"上传工具"

很多新手以为 Git 就是把代码上传到 Gitee。

这个理解不准确。

Git 的核心是:

复制代码
记录历史
管理版本
支持回退
支持分支
支持协作

Gitee 只是远程托管平台。

也就是说:

复制代码
没有 Gitee,也能用 Git 管理本地版本。
有了 Gitee,可以把本地仓库同步到远程。

2. 初学者先掌握一条主流程

不要一开始就学太多高级命令。

先把下面这条流程练熟:

复制代码
git pull
git status
git add .
git commit -m "提交说明"
git push

这就是日常开发最常用的 Git 流程。


3. 命令行和 PyCharm 都要会

PyCharm 好处是直观:

复制代码
看 diff 方便
提交文件方便
处理冲突方便
切换分支方便

命令行好处是稳定:

复制代码
能快速排查问题
能看清 Git 当前状态
任何编辑器都能用

我的建议是:

复制代码
平时用 PyCharm 提高效率,出问题时用命令行定位原因。

4. 提交说明要认真写

差的提交说明:

复制代码
修改
更新
代码
提交

好的提交说明:

复制代码
新增用户登录接口
修复登录密码为空时的校验问题
优化商品列表分页查询

提交说明写得越清楚,后期排查问题越轻松。


5. 不要什么文件都提交

应该提交:

复制代码
源代码
README
配置模板
依赖说明文件

不建议提交:

复制代码
虚拟环境
缓存文件
日志文件
本地 IDE 私人配置
编译产物

Git 很适合管理文本文件,尤其是代码。

但不适合频繁管理大型二进制文件,比如视频、压缩包、数据库文件。


十、总结

本文从初学者角度讲解了 Git 版本管理,并分别演示了命令行和 PyCharm 两种操作方式,远程平台使用 Gitee。

重点记住这条流程:

复制代码
修改代码
git status 查看状态
git add 加入暂存区
git commit 提交本地版本
git push 推送到 Gitee
git pull 拉取远程代码

命令行能帮你理解 Git 的真实流程,PyCharm 能提高日常开发效率,Gitee 能完成远程托管和协作。

刚开始学习 Git,不要追求一次掌握所有命令。

先把 add -> commit -> push -> pull 这条主线练熟,再逐步学习分支、合并、冲突解决和版本回退。

等这些流程真正用顺手后,Git 就不再是难点,而会变成你每天开发中最可靠的版本管理工具。

相关推荐
周杰伦fans1 小时前
解决 Git 推送/拉取报错:Could not resolve host: gitee.com
git·gitee
小李云雾2 小时前
Git命令行总结与结合Pycharm的综合应用
git·pycharm
GISer_Jing3 小时前
现代全栈工程化实战:Git+Docker+Vercel+CI/CD
git·ci/cd·docker
tianyuanwo3 小时前
AI Harness Engineering 应用最佳实践:从单点故障到系统护栏
人工智能·git·harnnees
rising start4 小时前
Git入门
git·gitee
修己xj12 小时前
Gogs: 打造属于你自己的轻量级 Git 服务
git
Mediary13 小时前
Git本地忽略文件夹,只拉取目标文件夹
git
MY_TEUCK18 小时前
【git工具篇】Git 常用实战手册:从基础命令到分支冲突解决(开发实战版)
大数据·git