Git 零基础常用指令手册Gitee / GitHub 通用 项内容适用对象Git 新手使用Gitee或GitHub管理代码的开发者文档目标掌握日常克隆、拉取、提交、推送、分支等操作平台Windows / macOS / Linux示例以 PowerShell / Bash 为主文档版本v1.2Gitee GitHub 通用 · 脱敏分享版更新日期2026-07-22结论先说Git 指令本身clone/add/commit/push/branch…在 Gitee 与 GitHub完全通用。不一样的地方主要是仓库网址、网页里加 SSH 公钥的入口、HTTPS 登录方式私人令牌、以及网页上「提合并请求」的叫法。阅读建议先看第 1 章概念 第 1.4 节平台对照再跟场景走一遍。示例说明用户名、仓库名、main、feature/xxx均为占位符。0. 分享前须知脱敏与安全处理项说明不含真实密钥无 SSH 私钥、Token、密码、keystore不含真实账号邮箱/用户名均为占位示例不含内部仓库地址使用占位地址见下文「地址写法」不含客户/产品专有信息分支与业务均用通用示例分享时请注意不要发送~/.ssh/id_ed25519无.pub后缀——那是私钥。可以配置到网站上的是id_ed25519.pub公钥。截图前检查是否露出真实组织名、仓库地址、Token、内网路径。团队规范必须走 PR、禁止强推等优先于本文。1. 基础概念1.1 Git、Gitee、GitHub 分别是什么名称是什么你怎么用Git装在电脑上的「版本管理工具」在终端敲git xxxGitee国内常用的代码托管网站浏览器打开 gitee.com存远程仓库GitHub全球常用的代码托管网站浏览器打开 github.com存远程仓库一句话Git 管本地历史Gitee/GitHub 管「云端仓库 协作网页」。1.2 什么是仓库Repository仓库 项目文件 「每一次改动的日记本」。文件夹 你的代码文件仓库 文件夹 Git 自动记账的历史每一笔记账叫一次提交commit。1.3 本地仓库 vs 远程仓库类型在哪干什么本地仓库电脑上有隐藏目录.git改代码、提交、切分支远程仓库Gitee 或 GitHub 云端备份、多人协作、多设备同步你的电脑本地 远程Gitee 或 GitHub ┌─────────────────┐ ┌─────────────────┐ │ 工作区 │ add/commit │ │ │ 正在改的文件│ ─────────────► │ 远程仓库 │ │ │ │ │ origin/main │ │ ▼ │ push ▲ │ │ │ 本地仓库 │ ───────┼──────►│ │ │ .git 历史 │ ◄─pull ┘ │ │ └─────────────────┘ /fetch └─────────────────┘说法含义origin远程仓库的默认昵称main/master/develop分支名以你仓库实际名称为准工作区干净没有未提交修改落后远端云端已有新提交你还没 pull1.4 三个工作区域区域是什么典型指令工作区编辑器里正在改的文件保存文件暂存区「准备提交」的清单git add本地仓库已写入历史的提交git commit再到远程git push。改文件 → git add → git commit → git push 工作区 暂存区 本地历史 Gitee/GitHub1.5 Gitee 与 GitHub哪些一样、哪些不同项目是否相同说明git clone/add/commit/push/branch/merge/stash/tag...相同都是 Git命令通用SSH / HTTPS 克隆推送逻辑相同只是域名不同仓库网页地址不同gitee.com vs github.com添加 SSH 公钥的菜单位置不同见第 2 章HTTPS 身份验证略有不同现多使用 Token不再用账户密码明文网页发起合并叫法不同Gitee 常称「Pull Request / 合并请求」GitHub 称Pull RequestPR开源协作「Fork」GitHub 极常见Gitee 也有类似「派生」流程类似地址写法对照请替换占位符方式GiteeGitHubSSHgitgitee.com:用户名/仓库名.gitgitgithub.com:用户名/仓库名.gitHTTPShttps://gitee.com/用户名/仓库名.githttps://github.com/用户名/仓库名.git下文示例会同时给出两种或写成# 任选其一主机 GIT_HOSTgitee.com # 或 github.com gitGIT_HOST:用户名/仓库名.git2. 本地环境配置2.1 安装 Git打开 Redirecting… 安装。检查git --versionWindows 可用Git Bash或PowerShell。2.2 配置姓名和邮箱git config --global user.name 你的名字 git config --global user.email your.nameexample.com git config --global --list参数说明--global本机所有仓库生效不加仅当前仓库邮箱建议与 Gitee / GitHub 账号绑定邮箱一致。2.3 SSH 密钥Gitee / GitHub 同一套密钥即可生成一次密钥可同时添加到 Gitee 和 GitHub。步骤 1是否已有密钥ls ~/.ssh有id_ed25519id_ed25519.pub可跳到步骤 3。步骤 2生成ssh-keygen -t ed25519 -C your.nameexample.com老系统可用ssh-keygen -t rsa -b 4096 -C your.nameexample.com文件能否分享id_ed25519绝不能分享私钥id_ed25519.pub可粘贴到网站公钥步骤 3复制公钥# Windows PowerShell Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub # macOS / Linux cat ~/.ssh/id_ed25519.pub步骤 4A添加到 Gitee登录 Gitee → 头像 →设置SSH 公钥→ 添加公钥 → 粘贴保存步骤 4B添加到 GitHub登录 GitHub → 头像 →Settings左侧SSH and GPG keys→New SSH keyTitle 随意Key 粘贴公钥 →Add SSH key步骤 5分别测试ssh -T gitgitee.com ssh -T gitgithub.com首次确认指纹时输入yes。出现成功/欢迎提示即可。一台电脑连两个网站通常同一把公钥加到两边即可。若公司要求隔离可生成第二对密钥并用~/.ssh/config指定进阶见附录。2.4 HTTPS 与 Token两平台都常用类型特点SSH推荐日常配好密钥后免密HTTPS需要身份验证现代平台多用Personal Access Token私人令牌而不是账户登录密码GitHubSettings → Developer settings → Personal access tokensGitee设置 → 私人令牌 / 私人令牌名称以网页为准令牌 密码禁止写入文档、聊天、截图、仓库。2.5可选GitHub CLIGitHub 提供命令行工具gh方便在终端创建 PR、看 Issue非必须新手可先只用git。安装说明见GitHub CLI | Take GitHub to the command line登录gh auth login示例gh pr create、gh pr listGitee 侧更多依赖网页或自有工具核心仍是 Git 指令。3. 常用指令详细说明先进入项目目录cd /path/to/your-projectWindowscd D:\Projects\your-project下文用main表示主分支请按实际分支名替换。3.1 clone克隆# Gitee git clone gitgitee.com:用户名/仓库名.git # GitHub git clone gitgithub.com:用户名/仓库名.git # 指定本地目录名 git clone gitgithub.com:用户名/仓库名.git my-folder # 只克隆某一分支更快 git clone -b main --single-branch gitgithub.com:用户名/仓库名.git参数含义-b 分支名克隆后切到该分支--single-branch只拉这一支最后路径本地文件夹名3.2 状态与历史git status git status -sb git log git log --oneline -10 git remote -v git branch -vv指令你会看到status改了哪些文件、是否超前/落后log --oneline短哈希 说明branch -vv如main...origin/mainremote -v当前连的是 Gitee 还是 GitHub3.3 fetch / pullgit fetch origin git log --oneline HEAD..origin/main git pull origin main git pull --ff-only origin main指令区别fetch只更新远端信息不自动改你的文件pull≈ fetch 合并进当前分支--ff-only不能快进就失败更安全建议每天开工先pull再写代码。3.4 add / commitgit status -sb git diff git diff --staged git add 文件路径 git add . git add -u path/to/dir/ # 同步「已跟踪文件」的修改与删除 git commit -m 简短说明做了什么PowerShell 多行git commit -m 标题一句话概括 正文补充原因。 写法含义git add 文件精确、更安全git add .全部变更易误加敏感文件git add -u更新已跟踪文件含删除不添加全新未跟踪文件提交说明示例fix: 修复登录按钮无响应 feat: 新增夜间模式开关 chore: 更新构建配置 docs: 补充 README 安装步骤不要提交类型示例密钥证书*.pem、*.keystore、私钥私密配置.env、含 Token 的配置文件令牌GitHub/Gitee PAT无关大文件除非团队明确要求3.5 pushgit push -u origin main git push参数含义origin远程昵称main远端分支名-u设置上游之后可只打git push远端有新提交时需先pull再push。3.6 分支git branch git branch -a git switch main git checkout main git switch -c feature/user-settings git push -u origin feature/user-settings git branch -d feature/user-settings git push origin --delete feature/user-settings命名建议feature/...、fix/...主分支保持可运行。3.7 mergegit switch main git pull origin main git merge feature/user-settings冲突时编辑去掉等标记 →git add→git commit→git push。3.8 在网页上发起合并Gitee / GitHub本地推送功能分支后平台常见名称典型路径GitHubPull RequestPR仓库页 →Pull requests→New pull requestGiteePull Request / 合并请求仓库页 →Pull Requests→ 创建推荐流程两边相同思路feature/xxx开发并push网页创建 PR源分支 功能分支目标分支 main同事 Review → 合并本地git switch main→git pull这比直接往main上push更适合团队协作。3.9 stashgit stash push -m 写到一半先拉代码 git stash push -u -m 含未跟踪文件 git stash list git stash pop git stash apply3.10 taggit tag v1.0.0 git tag -a v1.0.0 -m 正式版 1.0.0 git tag git push origin v1.0.0 git push origin --tags # 慎用推送全部本地标签3.11 回退与撤销# 未 add丢弃工作区修改 git restore 文件名 # 已 add 未 commit取消暂存 git restore --staged 文件名 # 已 commit 未 push git reset --soft HEAD~1 # 改动仍暂存 git reset HEAD~1 # 改动留工作区 git reset --hard HEAD~1 # 改动丢弃危险 # 已 push团队友好 git revert 提交哈希 git push方式工作区暂存区--soft保留仍暂存mixed默认保留清空--hard清空清空3.12 diffgit diff git diff --staged git diff main..feature/xxx3.13 .gitignorelocal.properties .env .env.* *.keystore *.jks *.pem build/ .idea/ .vscode/ *.iml .DS_Store Thumbs.db误跟踪后git rm --cached 文件名 git commit -m chore: 停止跟踪敏感或无关文件3.14可选Fork 工作流GitHub 开源最常见适合你没有原仓库写权限只想贡献代码。在 GitHub 网页点Fork得到「你账号下的副本」克隆你的 Forkgit clone gitgithub.com:你的用户名/仓库名.git cd 仓库名添加原仓库为上游便于同步git remote add upstream gitgithub.com:原作者用户名/仓库名.git git fetch upstream git merge upstream/main # 或git rebase upstream/main进阶建分支、改代码、push到你的origin网页向原仓库提Pull RequestGitee 亦有「派生/Fork」类能力步骤类似域名换成gitee.com。4. 日常使用场景场景 A加入已有远程项目# GitHub 示例Gitee 把主机改成 gitee.com 即可 git clone -b main --single-branch gitgithub.com:用户名/仓库名.git cd 仓库名 git branch -vv git remote -v # 改代码后 git pull --ff-only origin main git status -sb git add 你改过的文件 git commit -m feat: 说明你做了什么 git push origin main场景 B上班拉、下班推cd 你的项目目录 git pull --ff-only origin main # ……开发…… git add 具体文件 git status git commit -m chore: 今日进度 git push场景 C改到一半要先拉代码git stash push -u -m 手头未完成 git pull --ff-only origin main git stash pop场景 D功能分支 PRgit switch main git pull origin main git switch -c feature/login-fix # ……多次 commit…… git push -u origin feature/login-fix # 然后到 GitHub/Gitee 网页创建 Pull Request场景 E本地删除远程也要删除git add -u path/to/dir/ git status git commit -m chore: 移除过时文件 git push origin main场景 F本地已有项目首次上传到空仓库cd 本地项目文件夹 git init git add . git status # 确认无密钥 git commit -m chore: 初始提交 # Gitee git remote add origin gitgitee.com:用户名/仓库名.git # 或 GitHub # git remote add origin gitgithub.com:用户名/仓库名.git git branch -M main git push -u origin main场景 G同一项目同时有 Gitee 与 GitHub 镜像进阶git remote -v git remote add github gitgithub.com:用户名/仓库名.git git remote add gitee gitgitee.com:用户名/仓库名.git git push github main git push gitee main注意权限与敏感信息推到公开 GitHub 前务必检查有无密钥。5. 常见错误及解决方法5.1Permission denied (publickey)原因未加公钥、加错成私钥、或测错了主机Gitee/GitHub。处理把.pub加到对应网站分别执行ssh -T gitgitee.com ssh -T gitgithub.com5.2 push 被拒fetch first/non-fast-forwardgit pull --ff-only origin main # 或 git pull origin main git push origin main5.3 本地修改会被覆盖git stash push -u -m 临时保存 git pull git stash pop5.4 合并冲突去掉 / / 标记 →git add→git commit。5.5 误 add 敏感文件git restore --staged 文件名已 commit 未 pushgit reset --soft HEAD~1后重来。已 push 密钥立刻在 GitHub/Gitee作废 Token/轮换密钥再从仓库移除并视情况通知管理员。5.6 想撤销已 push 的提交团队优先git revert HEAD git push避免对共享分支push --force。5.7 以为删了网页上还在需git add -u→commit→push。5.8not a git repositorycd 含有 .git 的目录 git rev-parse --show-toplevel5.9LF will be replaced by CRLFWindows 常见可忽略或git config --global core.autocrlf true5.10 HTTPS 认证失败GitHub 常见GitHub 已不支持用账户密码进行 Git HTTPS。请改用SSH 地址或HTTPS Personal Access Token密码处填 Token5.11可选AndroidINSTALL_FAILED_UID_CHANGED与 Git 无关。卸载后重装adb uninstall com.example.yourapp6. 一张纸速查表我想…指令下载仓库git clone 地址看状态git status -sb拉最新git pull origin 分支名暂存git add 文件提交git commit -m 说明推送git push origin 分支名新建分支git switch -c 新分支切换分支git switch 分支名合并git merge 分支名暂存现场git stash push -m 说明历史git log --oneline -10打标签git tag -a v1.0.0 -m 说明安全撤销git revert 哈希黄金四步git pull git add 文件 git commit -m 说明 git push7. 学习路径建议一周天练习Day 1安装 Git、配身份信息、配 SSH测通 Gitee或GitHubDay 2clone → 改文件 → add → commit → push → 网页确认Day 3pull、status、log练习解决一次冲突Day 4分支创建/切换/合并试一次网页 PRDay 5stash、gitignore、tagDay 6在练习库理解 reset vs revertDay 7完整走场景 AF有余力试 ForkGitHub8. 附录 A协作与安全建议建议说明先拉后推少冲突小步提交说明写清楚主分支可运行大改走功能分支 PR敏感文件不入库.gitignore私钥永不外传只传.pub公开仓库再检查推到公开 GitHub 前确认无密钥遵守团队规范强制 PR / 禁止强推等9. 附录 B一台电脑多密钥进阶~/.ssh/config示例按需创建Host gitee.com HostName gitee.com User git IdentityFile ~/.ssh/id_ed25519_gitee Host github.com HostName github.com User git IdentityFile ~/.ssh/id_ed25519_github然后分别为两个 Host 生成密钥并上传对应公钥。新手通常不需要这一步。10. 修订记录版本日期说明v1.02026-07-22初版偏 Giteev1.12026-07-22脱敏分享版v1.22026-07-22明确适用于 GitHub补充平台对照、双平台 SSH/Token、PR/Fork、HTTPS 认证差异Git 命令通用Gitee / GitHub 仅托管平台不同。账号、令牌与私钥请自行保管勿写入可公开传播的文档。
Git 零基础常用指令手册(Gitee / GitHub 通用 )
Git 零基础常用指令手册Gitee / GitHub 通用 项内容适用对象Git 新手使用Gitee或GitHub管理代码的开发者文档目标掌握日常克隆、拉取、提交、推送、分支等操作平台Windows / macOS / Linux示例以 PowerShell / Bash 为主文档版本v1.2Gitee GitHub 通用 · 脱敏分享版更新日期2026-07-22结论先说Git 指令本身clone/add/commit/push/branch…在 Gitee 与 GitHub完全通用。不一样的地方主要是仓库网址、网页里加 SSH 公钥的入口、HTTPS 登录方式私人令牌、以及网页上「提合并请求」的叫法。阅读建议先看第 1 章概念 第 1.4 节平台对照再跟场景走一遍。示例说明用户名、仓库名、main、feature/xxx均为占位符。0. 分享前须知脱敏与安全处理项说明不含真实密钥无 SSH 私钥、Token、密码、keystore不含真实账号邮箱/用户名均为占位示例不含内部仓库地址使用占位地址见下文「地址写法」不含客户/产品专有信息分支与业务均用通用示例分享时请注意不要发送~/.ssh/id_ed25519无.pub后缀——那是私钥。可以配置到网站上的是id_ed25519.pub公钥。截图前检查是否露出真实组织名、仓库地址、Token、内网路径。团队规范必须走 PR、禁止强推等优先于本文。1. 基础概念1.1 Git、Gitee、GitHub 分别是什么名称是什么你怎么用Git装在电脑上的「版本管理工具」在终端敲git xxxGitee国内常用的代码托管网站浏览器打开 gitee.com存远程仓库GitHub全球常用的代码托管网站浏览器打开 github.com存远程仓库一句话Git 管本地历史Gitee/GitHub 管「云端仓库 协作网页」。1.2 什么是仓库Repository仓库 项目文件 「每一次改动的日记本」。文件夹 你的代码文件仓库 文件夹 Git 自动记账的历史每一笔记账叫一次提交commit。1.3 本地仓库 vs 远程仓库类型在哪干什么本地仓库电脑上有隐藏目录.git改代码、提交、切分支远程仓库Gitee 或 GitHub 云端备份、多人协作、多设备同步你的电脑本地 远程Gitee 或 GitHub ┌─────────────────┐ ┌─────────────────┐ │ 工作区 │ add/commit │ │ │ 正在改的文件│ ─────────────► │ 远程仓库 │ │ │ │ │ origin/main │ │ ▼ │ push ▲ │ │ │ 本地仓库 │ ───────┼──────►│ │ │ .git 历史 │ ◄─pull ┘ │ │ └─────────────────┘ /fetch └─────────────────┘说法含义origin远程仓库的默认昵称main/master/develop分支名以你仓库实际名称为准工作区干净没有未提交修改落后远端云端已有新提交你还没 pull1.4 三个工作区域区域是什么典型指令工作区编辑器里正在改的文件保存文件暂存区「准备提交」的清单git add本地仓库已写入历史的提交git commit再到远程git push。改文件 → git add → git commit → git push 工作区 暂存区 本地历史 Gitee/GitHub1.5 Gitee 与 GitHub哪些一样、哪些不同项目是否相同说明git clone/add/commit/push/branch/merge/stash/tag...相同都是 Git命令通用SSH / HTTPS 克隆推送逻辑相同只是域名不同仓库网页地址不同gitee.com vs github.com添加 SSH 公钥的菜单位置不同见第 2 章HTTPS 身份验证略有不同现多使用 Token不再用账户密码明文网页发起合并叫法不同Gitee 常称「Pull Request / 合并请求」GitHub 称Pull RequestPR开源协作「Fork」GitHub 极常见Gitee 也有类似「派生」流程类似地址写法对照请替换占位符方式GiteeGitHubSSHgitgitee.com:用户名/仓库名.gitgitgithub.com:用户名/仓库名.gitHTTPShttps://gitee.com/用户名/仓库名.githttps://github.com/用户名/仓库名.git下文示例会同时给出两种或写成# 任选其一主机 GIT_HOSTgitee.com # 或 github.com gitGIT_HOST:用户名/仓库名.git2. 本地环境配置2.1 安装 Git打开 Redirecting… 安装。检查git --versionWindows 可用Git Bash或PowerShell。2.2 配置姓名和邮箱git config --global user.name 你的名字 git config --global user.email your.nameexample.com git config --global --list参数说明--global本机所有仓库生效不加仅当前仓库邮箱建议与 Gitee / GitHub 账号绑定邮箱一致。2.3 SSH 密钥Gitee / GitHub 同一套密钥即可生成一次密钥可同时添加到 Gitee 和 GitHub。步骤 1是否已有密钥ls ~/.ssh有id_ed25519id_ed25519.pub可跳到步骤 3。步骤 2生成ssh-keygen -t ed25519 -C your.nameexample.com老系统可用ssh-keygen -t rsa -b 4096 -C your.nameexample.com文件能否分享id_ed25519绝不能分享私钥id_ed25519.pub可粘贴到网站公钥步骤 3复制公钥# Windows PowerShell Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub # macOS / Linux cat ~/.ssh/id_ed25519.pub步骤 4A添加到 Gitee登录 Gitee → 头像 →设置SSH 公钥→ 添加公钥 → 粘贴保存步骤 4B添加到 GitHub登录 GitHub → 头像 →Settings左侧SSH and GPG keys→New SSH keyTitle 随意Key 粘贴公钥 →Add SSH key步骤 5分别测试ssh -T gitgitee.com ssh -T gitgithub.com首次确认指纹时输入yes。出现成功/欢迎提示即可。一台电脑连两个网站通常同一把公钥加到两边即可。若公司要求隔离可生成第二对密钥并用~/.ssh/config指定进阶见附录。2.4 HTTPS 与 Token两平台都常用类型特点SSH推荐日常配好密钥后免密HTTPS需要身份验证现代平台多用Personal Access Token私人令牌而不是账户登录密码GitHubSettings → Developer settings → Personal access tokensGitee设置 → 私人令牌 / 私人令牌名称以网页为准令牌 密码禁止写入文档、聊天、截图、仓库。2.5可选GitHub CLIGitHub 提供命令行工具gh方便在终端创建 PR、看 Issue非必须新手可先只用git。安装说明见GitHub CLI | Take GitHub to the command line登录gh auth login示例gh pr create、gh pr listGitee 侧更多依赖网页或自有工具核心仍是 Git 指令。3. 常用指令详细说明先进入项目目录cd /path/to/your-projectWindowscd D:\Projects\your-project下文用main表示主分支请按实际分支名替换。3.1 clone克隆# Gitee git clone gitgitee.com:用户名/仓库名.git # GitHub git clone gitgithub.com:用户名/仓库名.git # 指定本地目录名 git clone gitgithub.com:用户名/仓库名.git my-folder # 只克隆某一分支更快 git clone -b main --single-branch gitgithub.com:用户名/仓库名.git参数含义-b 分支名克隆后切到该分支--single-branch只拉这一支最后路径本地文件夹名3.2 状态与历史git status git status -sb git log git log --oneline -10 git remote -v git branch -vv指令你会看到status改了哪些文件、是否超前/落后log --oneline短哈希 说明branch -vv如main...origin/mainremote -v当前连的是 Gitee 还是 GitHub3.3 fetch / pullgit fetch origin git log --oneline HEAD..origin/main git pull origin main git pull --ff-only origin main指令区别fetch只更新远端信息不自动改你的文件pull≈ fetch 合并进当前分支--ff-only不能快进就失败更安全建议每天开工先pull再写代码。3.4 add / commitgit status -sb git diff git diff --staged git add 文件路径 git add . git add -u path/to/dir/ # 同步「已跟踪文件」的修改与删除 git commit -m 简短说明做了什么PowerShell 多行git commit -m 标题一句话概括 正文补充原因。 写法含义git add 文件精确、更安全git add .全部变更易误加敏感文件git add -u更新已跟踪文件含删除不添加全新未跟踪文件提交说明示例fix: 修复登录按钮无响应 feat: 新增夜间模式开关 chore: 更新构建配置 docs: 补充 README 安装步骤不要提交类型示例密钥证书*.pem、*.keystore、私钥私密配置.env、含 Token 的配置文件令牌GitHub/Gitee PAT无关大文件除非团队明确要求3.5 pushgit push -u origin main git push参数含义origin远程昵称main远端分支名-u设置上游之后可只打git push远端有新提交时需先pull再push。3.6 分支git branch git branch -a git switch main git checkout main git switch -c feature/user-settings git push -u origin feature/user-settings git branch -d feature/user-settings git push origin --delete feature/user-settings命名建议feature/...、fix/...主分支保持可运行。3.7 mergegit switch main git pull origin main git merge feature/user-settings冲突时编辑去掉等标记 →git add→git commit→git push。3.8 在网页上发起合并Gitee / GitHub本地推送功能分支后平台常见名称典型路径GitHubPull RequestPR仓库页 →Pull requests→New pull requestGiteePull Request / 合并请求仓库页 →Pull Requests→ 创建推荐流程两边相同思路feature/xxx开发并push网页创建 PR源分支 功能分支目标分支 main同事 Review → 合并本地git switch main→git pull这比直接往main上push更适合团队协作。3.9 stashgit stash push -m 写到一半先拉代码 git stash push -u -m 含未跟踪文件 git stash list git stash pop git stash apply3.10 taggit tag v1.0.0 git tag -a v1.0.0 -m 正式版 1.0.0 git tag git push origin v1.0.0 git push origin --tags # 慎用推送全部本地标签3.11 回退与撤销# 未 add丢弃工作区修改 git restore 文件名 # 已 add 未 commit取消暂存 git restore --staged 文件名 # 已 commit 未 push git reset --soft HEAD~1 # 改动仍暂存 git reset HEAD~1 # 改动留工作区 git reset --hard HEAD~1 # 改动丢弃危险 # 已 push团队友好 git revert 提交哈希 git push方式工作区暂存区--soft保留仍暂存mixed默认保留清空--hard清空清空3.12 diffgit diff git diff --staged git diff main..feature/xxx3.13 .gitignorelocal.properties .env .env.* *.keystore *.jks *.pem build/ .idea/ .vscode/ *.iml .DS_Store Thumbs.db误跟踪后git rm --cached 文件名 git commit -m chore: 停止跟踪敏感或无关文件3.14可选Fork 工作流GitHub 开源最常见适合你没有原仓库写权限只想贡献代码。在 GitHub 网页点Fork得到「你账号下的副本」克隆你的 Forkgit clone gitgithub.com:你的用户名/仓库名.git cd 仓库名添加原仓库为上游便于同步git remote add upstream gitgithub.com:原作者用户名/仓库名.git git fetch upstream git merge upstream/main # 或git rebase upstream/main进阶建分支、改代码、push到你的origin网页向原仓库提Pull RequestGitee 亦有「派生/Fork」类能力步骤类似域名换成gitee.com。4. 日常使用场景场景 A加入已有远程项目# GitHub 示例Gitee 把主机改成 gitee.com 即可 git clone -b main --single-branch gitgithub.com:用户名/仓库名.git cd 仓库名 git branch -vv git remote -v # 改代码后 git pull --ff-only origin main git status -sb git add 你改过的文件 git commit -m feat: 说明你做了什么 git push origin main场景 B上班拉、下班推cd 你的项目目录 git pull --ff-only origin main # ……开发…… git add 具体文件 git status git commit -m chore: 今日进度 git push场景 C改到一半要先拉代码git stash push -u -m 手头未完成 git pull --ff-only origin main git stash pop场景 D功能分支 PRgit switch main git pull origin main git switch -c feature/login-fix # ……多次 commit…… git push -u origin feature/login-fix # 然后到 GitHub/Gitee 网页创建 Pull Request场景 E本地删除远程也要删除git add -u path/to/dir/ git status git commit -m chore: 移除过时文件 git push origin main场景 F本地已有项目首次上传到空仓库cd 本地项目文件夹 git init git add . git status # 确认无密钥 git commit -m chore: 初始提交 # Gitee git remote add origin gitgitee.com:用户名/仓库名.git # 或 GitHub # git remote add origin gitgithub.com:用户名/仓库名.git git branch -M main git push -u origin main场景 G同一项目同时有 Gitee 与 GitHub 镜像进阶git remote -v git remote add github gitgithub.com:用户名/仓库名.git git remote add gitee gitgitee.com:用户名/仓库名.git git push github main git push gitee main注意权限与敏感信息推到公开 GitHub 前务必检查有无密钥。5. 常见错误及解决方法5.1Permission denied (publickey)原因未加公钥、加错成私钥、或测错了主机Gitee/GitHub。处理把.pub加到对应网站分别执行ssh -T gitgitee.com ssh -T gitgithub.com5.2 push 被拒fetch first/non-fast-forwardgit pull --ff-only origin main # 或 git pull origin main git push origin main5.3 本地修改会被覆盖git stash push -u -m 临时保存 git pull git stash pop5.4 合并冲突去掉 / / 标记 →git add→git commit。5.5 误 add 敏感文件git restore --staged 文件名已 commit 未 pushgit reset --soft HEAD~1后重来。已 push 密钥立刻在 GitHub/Gitee作废 Token/轮换密钥再从仓库移除并视情况通知管理员。5.6 想撤销已 push 的提交团队优先git revert HEAD git push避免对共享分支push --force。5.7 以为删了网页上还在需git add -u→commit→push。5.8not a git repositorycd 含有 .git 的目录 git rev-parse --show-toplevel5.9LF will be replaced by CRLFWindows 常见可忽略或git config --global core.autocrlf true5.10 HTTPS 认证失败GitHub 常见GitHub 已不支持用账户密码进行 Git HTTPS。请改用SSH 地址或HTTPS Personal Access Token密码处填 Token5.11可选AndroidINSTALL_FAILED_UID_CHANGED与 Git 无关。卸载后重装adb uninstall com.example.yourapp6. 一张纸速查表我想…指令下载仓库git clone 地址看状态git status -sb拉最新git pull origin 分支名暂存git add 文件提交git commit -m 说明推送git push origin 分支名新建分支git switch -c 新分支切换分支git switch 分支名合并git merge 分支名暂存现场git stash push -m 说明历史git log --oneline -10打标签git tag -a v1.0.0 -m 说明安全撤销git revert 哈希黄金四步git pull git add 文件 git commit -m 说明 git push7. 学习路径建议一周天练习Day 1安装 Git、配身份信息、配 SSH测通 Gitee或GitHubDay 2clone → 改文件 → add → commit → push → 网页确认Day 3pull、status、log练习解决一次冲突Day 4分支创建/切换/合并试一次网页 PRDay 5stash、gitignore、tagDay 6在练习库理解 reset vs revertDay 7完整走场景 AF有余力试 ForkGitHub8. 附录 A协作与安全建议建议说明先拉后推少冲突小步提交说明写清楚主分支可运行大改走功能分支 PR敏感文件不入库.gitignore私钥永不外传只传.pub公开仓库再检查推到公开 GitHub 前确认无密钥遵守团队规范强制 PR / 禁止强推等9. 附录 B一台电脑多密钥进阶~/.ssh/config示例按需创建Host gitee.com HostName gitee.com User git IdentityFile ~/.ssh/id_ed25519_gitee Host github.com HostName github.com User git IdentityFile ~/.ssh/id_ed25519_github然后分别为两个 Host 生成密钥并上传对应公钥。新手通常不需要这一步。10. 修订记录版本日期说明v1.02026-07-22初版偏 Giteev1.12026-07-22脱敏分享版v1.22026-07-22明确适用于 GitHub补充平台对照、双平台 SSH/Token、PR/Fork、HTTPS 认证差异Git 命令通用Gitee / GitHub 仅托管平台不同。账号、令牌与私钥请自行保管勿写入可公开传播的文档。