Git指南
Git简介
Git安装
- Git 是分布式版本控制工具,核心价值在于高效管理代码变更、支持离线协作与灵活分支策略
- 对比集中式系统(如 SVN),安全性更高(本地即备份)且协作更灵活
- 下载与安装
Git框架
- Workspace:工作区是本地计算机上的项目目录,在这里进行文件的创建、修改和删除操作
- Stage/Index:暂存区是一个临时存储区域,它包含了即将被提交到版本库中的文件快照(索引),在提交之前,你可以选择性地将工作区中的修改添加到暂存区
- Repository:版本库包含项目的所有版本历史记录。,工作区有一个隐藏目录
.git
是 Git 的版本库
工作流

- 克隆仓库:要参与一个已有的项目,首先需要将远程仓库克隆到本地
- 创建新分支:为了避免直接在 main 或 master 分支上进行开发,通常会创建一个新的分支
- 修改副本:在工作目录中进行代码编辑、添加新文件或删除不需要的文件
- 暂存修改:将修改过的文件添加到暂存区,以便进行下一步的提交操作
- 提交修改:将暂存区的更改提交到本地仓库,并添加提交信息
- 拉取最新更新:在推送本地更改之前,最好从远程仓库拉取最新的更改,以避免冲突
- 推送修改:将本地的提交推送到远程仓库
GitHub仓库
- 利用SSH来完成GitHub的绑定并提交文件
- SSH专为会话和其他网络服务提供安全性的协议,加密压缩数据、加快传输速度
SSH密钥
-
右键打开Git Bash,输入
ssh
查看本机是否安装SSH -
输入
ssh-keygen -t rsa
生成RSA
算法公钥和私钥,若成功则打印公钥指纹

SSH绑定
- Git Bash中输入
cat ~/.ssh/id_rsa.pub
打印并复制公钥 - 登录 GitHub → Settings → SSH and GPG Keys → New SSH Key
- Git Bash中输入
ssh -T git@github.com
,若打印信息You've successfully authenticated
则绑定成功
SSH地址
- 进入GitHub仓库复制HTTPS协议或SSH协议的下载链接

Git操作
远程推送
- 初始化本地Git仓库
git init
- 关联远程仓库
git remote add origin git@github.com:username/repo.git
- 验证远程仓库
git remote -v
- 更改远程仓库
git remote set-url origin git@github.com:username/repo.git
- 验证远程仓库
- 添加文件到缓存区
git add .
- 重置暂存区
git reset
- 设置忽略文件或目录
git add .gitignore
- 重置暂存区
1 | Output/ |
- 使用
git commit -am "msg of update"
将修改提交至本地仓库- 此操作会更新本地.git目录,是上传远程前的必要步骤
- 完成后可使用
git log
查看本次更新的提交信息及哈希值 - 使用
git status
查看还未提交的文件
- 拉取远程变更合并
git pull origin main
- 推送至主分支
git push -u origin main
-u
将本地main
分支与远程origin(远程主机)/main(默认分支)
分支建立联系,未来在该分支只需输入git push
或git pull
即可自动关联到origin/main

-
首次提交需添加邮箱信息,后续修改邮箱信息也可使用以下命令
1
2git config --global user.email "your@email.com"
git config --global user.email "your name"
本地下载
- Git Bash中输入
git clone git@github.com:username/repo.git
,获取远程仓库到本地仓库(工作区)

- 在
git clone <url>
中集成了多步操作- 本地新建远程仓库目录
- 初始化仓库:
git init
- 添加远程地址:
git remote add origin <url>
- 获取远程数据:
git fetch origin
- 自动检出默认分支:
git checkout main
分支管理
-
检出默认分支:clone时所有分支均会被下载,默认分支一般被命名为main或者master;自动设置默认分支(Branch)为当前工作主线,其他分支隐藏
-
创建新分支并切换到该分支:
git checkout -b <branchname>
-
查看分支:
git branch
默认查看本地- 查看远程
-r
,查看远程和本地-a
- 查看远程
-
合并分支:
git merge <branchname>
将其他分支合并到当前分支 -
删除本地分支:
git branch <select> <branchname>
- 删除本地
-d
,删除未合并分支-D
- 删除本地
-
删除远程分支
git push origin --delete <branchname>