把本地 Python 项目用 Git 进行版本控制并推送到 GitHub

这篇文章介绍怎么把本地 Python 项目用 Git 进行版本控制并推送到 GitHub

第一步:安装必要的工具

如果你还没有安装:

  1. 安装 Git:https://git-scm.com/
  2. 注册 GitHub 账号:https://github.com/

第二步:在项目目录初始化 Git

  1. 打开命令提示符或终端
  2. 进入你的项目目录:
bash 复制代码
cd D:\workplace\TSC
  1. 初始化 Git 仓库:
bash 复制代码
git init
  1. 配置全局用户名和邮箱:(替换为你的 GitHub 用户名和注册邮箱):
bash 复制代码
git config --global user.name "你的GitHub用户名"
git config --global user.email "你的GitHub注册邮箱"

第三步:创建 .gitignore 文件

在项目根目录创建 .gitignore 文件,内容如下:

复制代码
# Python 相关
__pycache__/
*.py[cod]
*$py.class
*.so
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg

# Jupyter Notebook
.ipynb_checkpoints/

# 数据集和大型文件(不需要版本控制)
backups/
EMNIST/
FashionMNIST/
MNIST/
matchlayersfc/

# 环境相关
.env
.venv
venv/
ENV/

# IDE
.vscode/
.idea/
*.swp
*.swo

# 系统文件
.DS_Store
Thumbs.db

第四步:添加文件到 Git

  1. 添加所有文件到暂存区:
bash 复制代码
git add .
  1. 如果你只想添加特定类型的文件,可以分别添加:
bash 复制代码
git add *.py
git add *.ipynb
git add *.md
git add data_utils.py ft_devices.py helper.py models.py

第五步:提交更改

bash 复制代码
git commit -m "初始提交:添加TSC项目文件,包括MNIST/EMNIST实验代码"

第六步:在 GitHub 创建远程仓库

  1. 登录 GitHub
  2. 点击右上角 "+" → "New repository"
  3. 填写仓库名称(如 "TSC-Project")
  4. 描述可选填
  5. 选择 Public 或 Private
  6. 不要初始化 README、.gitignore 或 license(因为本地已经有了)
  7. 点击 "Create repository"

第七步:连接本地和远程仓库

复制 GitHub 提供的命令,类似这样:

bash 复制代码
git remote add origin https://github.com/你的用户名/TSC-Project.git
git branch -M main
git push -u origin main

第八步:推送代码到 GitHub

bash 复制代码
git push -u origin main

后续开发工作流程

以后每次修改代码后,使用这个流程:

  1. 查看更改状态:
bash 复制代码
git status
  1. 添加修改的文件:
bash 复制代码
git add .
# 或者添加特定文件
git add 文件名.py
  1. 提交更改:
bash 复制代码
git commit -m "描述你的修改内容"
  1. 推送到远程:
bash 复制代码
git push

重要提醒

  1. 不要将大型数据集上传到 Git(已经在 .gitignore 中排除了)
  2. 定期提交,保持提交信息的清晰
  3. 如果有多人协作,记得先 git pull 再开始工作
  4. 重要的模型文件或大型文件考虑使用 Git LFS

这样你的项目就在 Git 版本控制下了,并且同步到了 GitHub!

相关推荐
落羽凉笙12 分钟前
Python基础(4)| 玩转循环结构:for、while与嵌套循环全解析(附源码)
android·开发语言·python
努力变大白16 分钟前
借助AI零基础快速学会Python爬取网页信息-以天眼查爬虫为例
人工智能·爬虫·python
_Rookie._21 分钟前
关于迭代协议:可迭代协议和迭代器协议,生成器函数 生成器对象的理解
javascript·python
农夫山泉2号22 分钟前
【rk3588】——在rk3588上,用python进行qwen3-vl模型推理
python·flask·rk3588·qwen3-vl
967733 分钟前
python基础自学
开发语言·windows·python
毕设源码-朱学姐34 分钟前
【开题答辩全过程】以 基于Python的茶语店饮品管理系统的设计与实现为例,包含答辩的问题和答案
开发语言·python
我想回家种地34 分钟前
python期末复习重点
前端·javascript·python
rgeshfgreh37 分钟前
掌握PyWinAuto:高效Windows自动化
python
xwill*38 分钟前
wandb的使用方法,以navrl为例
开发语言·python·深度学习
rgeshfgreh44 分钟前
解决Windows系统Python命令无效问题
python