Python学习笔记·第28天:Git入门——版本控制与基础操作

一、为什么要学Git?

一句话:Git就是代码的"时光机+备份硬盘+协作工具"。

问题 Git怎么解决
电脑坏了代码没了 代码推送到远程仓库(GitHub),永远丢不了
代码改坏了想回去 git reset --hard 一键回到任意历史版本
多人同时改一个文件 各自在自己的分支上改,互不影响,最后合并
不知道谁写的Bug git log 查看每次提交的记录和作者

二、集中式 vs 分布式

类型 代表 特点
集中式 SVN 代码存在中央服务器,断网不能干活
分布式 Git 每台电脑都有完整仓库,断网也能提交,联网后同步

三、Git 工作流程图

复制代码
工作区(写代码的地方)  →  git add →  暂存区(准备提交的文件) → git commit → 本地仓库(保存历史版本)
                                                                                    ↓
                                                                                 git push
                                                                                    ↓
                                                                          远程仓库(GitHub)

七个核心命令

命令 方向 作用
git clone 远程 → 本地 把远程仓库复制到本地
git add 工作区 → 暂存区 把修改加入暂存区
git commit 暂存区 → 本地仓库 把暂存区内容提交到本地仓库
git push 本地 → 远程 把本地仓库推送到远程仓库
git pull 远程 → 工作区 拉取远程更新并合并
git fetch 远程 → 本地仓库 只拉取不合并
git checkout 本地仓库 → 工作区 切换分支或恢复文件

四、安装与配置

1. 安装

下载地址:https://git-scm.com/download

安装完成后,桌面右键能看到 Git Bash HereGit GUI Here 就说明安装成功。

2. 配置用户名和邮箱(必须做,每次提交都会记录这个信息)

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

3. 配置别名(可选,但建议配置)

bash 复制代码
# 简化日志输出
alias git-log='git log --pretty=oneline --all --graph --abbrev-commit'

# 简化文件列表
alias ll='ls -al'

五、基础操作命令

1. 初始化仓库

bash 复制代码
git init  # 把当前目录变成Git仓库,会生成一个隐藏的.git文件夹

2. 查看状态

bash 复制代码
git status  # 查看哪些文件修改了、哪些在暂存区、哪些还没跟踪

3. 添加到暂存区

bash 复制代码
git add 文件名    # 添加指定文件
git add .         # 添加所有修改的文件

4. 提交到本地仓库

bash 复制代码
git commit -m "本次提交的说明"

5. 查看提交历史

bash 复制代码
git log           # 详细日志
git-log           # 精简日志(需要先配置别名)
git reflog        # 查看所有操作记录(包括已删除的提交)

6. 版本回退

bash 复制代码
git reset --hard commitID  # 回到指定版本,commitID用git-log查看

六、忽略文件 .gitignore

有些文件不需要Git管理(日志、临时文件、编译产物),在项目根目录创建 .gitignore 文件:

复制代码
*.log          # 忽略所有.log文件
__pycache__/   # 忽略Python缓存文件夹
*.pyc          # 忽略编译后的Python文件

今日核心总结

  1. Git是分布式版本控制工具:每台电脑都有完整仓库,断网也能提交
  2. 三步上篮addcommitpush
  3. 时光倒流git reset --hard commitID 回到任意历史版本
  4. 查日志git-log 看提交历史,git reflog 看所有操作记录
  5. 忽略文件.gitignore 排除不需要版本控制的文件
相关推荐
Bryce学亮1 小时前
1688 半自动化拟人浏览信息处理工具爬虫
爬虫·python
Yang_jie_031 小时前
笔记:数据结构(链表)
数据结构·笔记·链表
xiaoyuchidayuma1 小时前
【# 电压极限圆、电流极限圆、MTPA曲线、最大功率曲线的关系】
笔记·学习
是枚小菜鸡儿吖1 小时前
服务器出问题别等用户反馈:用Python和钉钉搭一套轻量告警系统
服务器·python·钉钉
五哈俱乐部1 小时前
TCHouse-C分布式表创建指南
笔记
问君能有几多愁~10 小时前
C++ 数据结构复习笔记
数据结构·c++·笔记
r_oo_ki_e_10 小时前
Java Map 集合学习笔记
java·笔记·学习
聪明的一休丶11 小时前
VLLM v0.24.0 版本深度解析:新引擎、新架构与大规模服务全家桶升级
python·架构·vllm
笨鸟先飞的橘猫11 小时前
skynet——sharetable学习
学习·skynet