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

相关推荐
装不满的克莱因瓶3 小时前
链式法则如何传递参数误差 —— 深入理解神经网络中的梯度传播
人工智能·python·深度学习·神经网络·数学·机器学习·ai
Anastasiozzzz3 小时前
从有限状态机到智能体图:传统 FSM 与 Agent Graph的演进
java·人工智能·python·ai
biter down9 小时前
从 0 到 1 搭建 Python 接口自动化测试框架(博客系统实战)
开发语言·python
恋喵大鲤鱼9 小时前
git rebase
git·git rebase
肖永威10 小时前
Python多业务并行计算框架插件化演进:从硬编码到动态注册
python·插件化·并行计算·动态注册
yz_aiks10 小时前
Linux Jar包配置Systemd自启动实战:从排查到配置全流程
linux·python·jar·自启动·systemd
徐小夕10 小时前
万字长文!千万级文档 RAG 知识库系统落地实践
前端·算法·github
不知名的老吴10 小时前
线程的生命周期之线程“插队“
java·开发语言·python
xsc69967511 小时前
从零搭建大模型与智能体平台 - 完整技术详解
python
无风听海13 小时前
多租户系统中的 OIDC:Discovery 端点与联合登录的深度实践
后端·python·flask