把本地 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!

相关推荐
Y幽谷客8 小时前
Python加载本地大模型(Qwen3.5 8B)
python·大模型
伞伞悦读9 小时前
【第36期】Python 目录与路径详解:pathlib、文件遍历、创建、复制、移动和删除风险
开发语言·python
线上放牧人9 小时前
Windows删除图标缓存
windows·python·pyqt
qq_5470261799 小时前
Python 变量和简单数据类型
python
峰向AI10 小时前
Kage: 一个 244KB 文件,做出百万级视觉效果
github
Hvitur11 小时前
Linux安装Git【离线安装】
git
智搜广告11 小时前
智搜广告:科技行业AI回答优化公司如何破局
大数据·python·elasticsearch·geo
IpdataCloud11 小时前
AI智能体调用工具怎么核验来源IP?归属地、网络类型与代理风险识别(含Python代码)
数据库·python·tcp/ip
2601_9669496512 小时前
只拿到股票代码还不够:量化程序到底还需要哪些标的信息?——从数据建模开始理解股票元数据
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
蒸鱼Yuzheng12 小时前
Python 游戏测试开发怎么准备:日志解析、接口校验、并发与可维护性
自动化测试·python·测试开发·面试题·游戏测试