目录

一.颜色对应的文件状态

红绿蓝灰紫黑

二.手动操作


1. 创建本地仓库

2. 新建文件并提交到本地仓库+推送远程

3. 文件重命名操作

4. 编辑文件内容并提交(含对比查看)

5. 查看提交日志(含版本对比)

6. 文件还原(撤销本地修改)

7. 已有远程仓库,推送本地文件至远程

8. 无远程仓库时,直接创建本地仓库并推送远程

9. 克隆远程仓库到本地(完整复制远程内容)

10. 修改克隆的远程仓库内容,同步回远程

11. 抓取(Fetch)与拉取(Pull)操作(同步远程仓库更新)

12. 标签(Tag)操作(标记重要版本)
 
13.冲突解决(团队协作必遇场景,精准处理不丢代码)
14.分支操作

15.SSH密钥配置(免重复登录)

 

一.以下是TortoiseGit中文件/文件夹常见状态颜色的含义对照表:

 颜色        状态说明         对应操作场景


1.   **红色**

未纳入版本控制(新文件)或已修改但未提交(已跟踪文件)                  

新创建的文件还没被`git add`跟踪;

已跟踪的文件被修改后,未执行提交


2.  **绿色** 

已暂存(已`git add`)但未提交                            .执行了`git add`(或在提交窗口勾选文件),但未点「Commit」完成提交


3.   **蓝色**

已提交,但本地有未推送的提交(本地分支领先远程分支)          

提交后未执行「Git 推送」,本地版本比远程新

                               
4.   **灰色**  

 被版本库忽略(在`.gitignore`中配置)                    如临时文件、日志文件等,Git不会跟踪其变更

                                  
5.   **紫色**

 处于冲突状态(合并/拉取时文件内容冲突)            多人修改同一文件同一位置,拉取或合并时产生冲突,需手动解决


6.  **正常黑色**

已提交且与版本库一致(无未跟踪/未提交修改)   工作区文件与版本库最新版本完全相同,无任何未处理的变更

 

二.手动操作

1.创建本地版本库(仓库)

 

(1). 新建一个空文件夹(建议命名与项目相关),确保文件夹路径无中文、空格(避免兼容性问题)

(2). 右键点击该文件夹,选择TortoiseGit→创建版本库,在弹出的窗口中直接点击确定

(3). 操作完成后,文件夹内会生成隐藏的 .git 目录(需开启“显示隐藏文件”才能看到),表示本地仓库创建成功(仅是本地)

 

2.新建文件并提交到本地仓库+推送远程

 

(1). 在上述仓库文件夹工作空间中,右键「新建」→「文本文档」,命名后编辑文件内容并保存

(2). 选中新建的文件,右键选择「TortoiseGit」→「添加」,在弹出的窗口中点击「确定」,此时文件被添加到暂存区(等待提交的状态)

(3). 回到仓库文件夹空白处,右键选择「TortoiseGit」→「提交」,在“提交日志”框中填写清晰的修改说明(如“账号登录文件”),勾选需要提交的文件,点击「确定」,完成文件到本地仓库的提交

(4). 若需推送到远程仓库(如Gitee、GitHub),提交完成后,右键仓库文件夹→「TortoiseGit」→「推送」,按后续“远程仓库推送”步骤配置URL,完成推送

 

3.文件重命名操作

 

(1). 在仓库文件夹中,直接右键文件选择「重命名」,修改为目标名称(如 old.txt → new.txt )

(2). 回到文件夹空白处,右键「TortoiseGit」→「提交」,此时提交列表中会显示两个条目:原文件名(标注“删除”)、新文件名(标注“添加”),默认均为勾选状态(无需手动修改)

(3). 填写提交日志(如“重命名:old.txt→new.txt,优化文件命名规范”),点击「确定」完成本地提交,如需同步远程,后续执行「推送」操作

 

4.编辑文件内容并提交(含对比查看)

 

(1). 打开仓库中的文件,修改内容后保存(如在 main.cpp 中添加函数实现)

(2). 右键仓库文件夹→「TortoiseGit」→「提交」,在提交窗口的“已修改”列表中,选中要提交的文件,点击窗口下方的「查看差异」按钮,可查看修改前后的内容对比(注:红色标注删除内容,绿色标注新增内容)

(3). 确认修改无误后,填写提交日志(如“完善main.cpp:添加账号登录函数”),勾选文件并点击「确定」,完成本地提交,后续可推送至远程

 

5.查看提交日志(含版本对比)

 

(1). 右键仓库文件夹→「TortoiseGit」→「查看日志」,即可看到所有历史提交记录(含提交人、时间、日志......)

(2). 若需对比两个版本的差异,在日志列表中选中两个目标版本(按住Ctrl键点击),右键选择「比较版本」,即可查看文件内容的详细差异

 

6.文件还原(撤销本地修改)

 

(1). 若对文件的本地修改(未提交到暂存区/本地仓库)不满意,需恢复到上一次提交的状态,选中该文件

(2). 右键选择「TortoiseGit」→「还原」,在弹出的窗口中点击「确定」,文件将恢复为最近一次提交到本地仓库的版本(注意:已提交的修改无法通过此操作还原,需通过版本回退实现)

 

7.已有远程仓库(如Gitee),推送本地文件至远程

 

1. 先在Gitee上创建一个空仓库(记录仓库的SSH地址:仓库页面→「克隆/下载」→「SSH」→复制地址,如 git@gitee***.git )

(2). 回到本地仓库文件夹,右键→「TortoiseGit」→「推送」

(3). 在推送窗口的「远端」栏中,点击「管理」→「添加」,在「URL」中粘贴复制的SSH地址,「远端名称」默认填写 origin (可自定义,建议保留默认),点击「确定」

4. 回到推送窗口,点击「确定」,首次操作会弹出登录窗口,输入Gitee的用户名(非昵称,为注册时的账号) 和密码,验证通过后即可完成推送(首次推送需配置SSH密钥,若提示密钥错误,需先在Gitee绑定本地SSH公钥)

 

8.无远程仓库时,直接创建本地仓库并推送远程

 

(1). 新建本地仓库文件夹,按步骤一创建本地版本库

 

(2). 在文件夹中新建文件,按步骤二完成「添加→提交到本地仓库」(需填写提交日志)

(3). 按步骤七的操作,在Gitee创建空仓库并复制SSH地址,回到本地执行「推送」,填写Gitee用户名和密码,即可将本地仓库首次推送到远程(远程仓库会自动同步本地文件)

 

9.克隆远程仓库到本地(完整复制远程内容)

 

(1). 新建一个空文件夹(用于存放克隆的远程仓库内容,路径无中文/空格)

(2). 右键该文件夹→「TortoiseGit」→「克隆」

(3). 到Gitee远程仓库页面,点击「克隆/下载」→「HTTPS」→复制地址(必须使用HTTPS地址,不可用SSH地址,也不可复制其他无关地址)

(4). 将复制的HTTPS地址粘贴到克隆窗口的「URL」中,「目标目录」默认是当前文件夹(可修改,建议保持默认),点击「确定」

(5). 输入Gitee用户名和密码,验证通过后,远程仓库的所有文件会自动克隆到本地文件夹中(克隆完成后,文件夹内直接显示项目文件,无需再创建本地仓库)

 

(6)注意:克隆时,仓库不可以有文件,否则会把原有文件覆盖

10.修改克隆的远程仓库内容,同步回远程

 

(1). 打开克隆后的本地文件夹,修改文件内容(或新增/删除文件)并保存

(2.).右键文件夹→「TortoiseGit」→「提交」,填写提交日志(如“修改README.md:补充项目开发规范”),勾选修改后的文件,点击「确定」完成本地提交

(3). 提交完成后,右键文件夹→「TortoiseGit」→「推送」,点击「确定」(默认使用克隆时的远程地址),完成本地修改同步到远程仓库

(4). 推送后,建议登录Gitee远程仓库页面,检查文件是否已更新,确保同步成功

 

11.抓取(Fetch)与拉取(Pull)操作(同步远程仓库更新)

 

(1). 抓取(Fetch):获取远程更新但不合并到本地工作区

右键本地仓库文件夹→「TortoiseGit」→「获取」,在弹出的窗口中点击「确定」,即可获取远程仓库的最新版本信息(存储在本地的 origin 分支中),但本地工作区的文件不会发生变化(仅同步版本记录)

 

(2).拉取(Pull):获取远程更新并合并到本地工作区(核心操作)

      右键本地仓库文件夹→「TortoiseGit」→「拉取」

​      在拉取窗口中,「远端分支」默认选择「origin/main」(或 origin/master ,根据远程仓库主分支名称选择),「本地分支」选择当前正在开发的分支(建议保持与远程分支一致,如 main ),点击「确定」

     若选择与本地当前分支不同的远程分支,会触发“分支合并”,可能产生冲突,非必要不操作;若需获取其他分支内容,建议先通过「切换分支」操作,再执行拉取

 

12.标签(Tag)操作(标记重要版本,如发布版)

 

(1.).标签分类

  轻量标签:仅存储提交校验和,无额外说明,命令对应 git tag <标签名> (如 git tag main.cpp )

​ 附注标签:存储完整的Git对象(含提交人、时间、附注信息),支持校验,命令对应 git tag -a <标签名> -m <附注信息> (如 git tag -a main.cpp -m "更改主要函数1" ),推荐使用

 

(2). 标签创建与推送远程

     右键本地仓库文件夹→「TortoiseGit」→「创建标签」

     在创建标签窗口中,「标签名称」填写规范名称(如 main.cpp ),「标签信息」填写附注内容(如“主要函数更改1”),点击「确定」,完成本地标签创建

(3). 标签创建后需推送至远程仓库,右键文件夹→「TortoiseGit」→「推送」,在推送窗口中勾选「推送标签」(默认不勾选),点击「确定」,即可将标签同步到远程仓库

 

13.冲突解决(团队协作必遇场景)

 
(1). 冲突触发场景
 
多人同时修改同一文件的同一行内容,或一方删除文件、另一方修改该文件后,执行「拉取」「合并」操作时,Git无法自动判断保留哪版内容,会触发冲突
 
(2). 完整解决步骤
 
      拉取/合并时弹出「冲突提示窗口」,点击「编辑冲突」(不要点「取消」或「关闭」,避免代码丢失)
      打开TortoiseGit冲突编辑器,界面分为3栏:
- 左栏:本地当前分支的修改(标注「Local」);
- 中栏:最终要保留的内容(需手动编辑);
- 右栏:远程分支/待合并分支的修改(标注「Remote」);
- 冲突标记: <<<<<<< HEAD (本地修改开始)、 ======= (分隔线)、 >>>>>>> 分支名/版本号 (远程修改结束),需手动删除
        编辑中栏内容:保留需要的代码(可混合本地和远程修改),删除冲突标记和无用代码,保存文件
        关闭编辑器,回到冲突提示窗口,点击「已解决」(此时文件状态从「冲突」变为「已修改」)
        右键仓库文件夹→「TortoiseGit」→「提交」,填写日志(如“解决a.cpp文件冲突:保留用户登录校验逻辑”),勾选冲突文件,点击「确定」完成提交
         最后执行「推送」操作,将解决后的版本同步到远程仓库
 
(3). 避坑要点
 
- 冲突未解决前,不要强行提交/推送,否则会导致远程仓库出现冲突标记
 
 

14.分支操作(团队并行开发必备,互不干扰)

建议频繁使用分支合并,不建议拉取

 
(1). 分支命名规范(建议团队统一)
 
- 主分支: main (或 master ,远程仓库默认主分支),仅存放稳定版本,禁止直接修改
- 功能分支: feature/功能名 (如 feature/login ),用于开发新功能
- 修复分支: bugfix/问题描述 (如 bugfix/login-error ),用于修复线上/测试环境bug;
- 临时分支: temp/开发者名-用途 (如 temp/zhangsan-test ),仅本地临时使用,不推送远程
 
(2). 核心分支操作步骤
 
       创建分支(基于当前分支创建新分支,继承所有代码)
 
       右键仓库文件夹→「TortoiseGit」→「创建分支」
       填写「分支名称」(按规范命名),勾选「切换到新分支」(默认勾选,无需修改),点击「确定」
(3). 操作完成后,文件夹空白处右键→「TortoiseGit」→「查看日志」,可看到当前分支已切换为新创建的分支
 
      切换分支(在不同分支间切换开发,需先提交当前分支修改)
 
      确保当前分支的修改已提交(本地提交即可,无需推送远程),避免切换后代码丢失
      右键仓库文件夹→「TortoiseGit」→「切换/检出」
       在弹出的窗口中,选择目标分支(如从 feature/login 切换到 main ),点击「确定」
       切换成功后,文件夹中的文件会自动更新为目标分支的内容
 
(4)合并分支(功能开发完成后,合并到主分支)
 
         切换到接收合并的分支(如要将 feature/login 合并到 main ,先切换到 main 分支)
         右键仓库文件夹→「TortoiseGit」→「合并」
         在「合并」窗口中,「来自分支」选择要合并的分支(如 feature/login ),点击「确定」
         若出现冲突,按「冲突解决」步骤处理;无冲突则直接合并成功
         合并完成后,提交 main 分支(日志注明“合并feature/login分支:完成用户登录功能”),并推送至远程仓库
 
(5)删除分支(功能合并后/临时分支无用时)
 
        右键仓库文件夹→「TortoiseGit」→「分支」
        在分支列表中,选中要删除的分支(如 feature/login ),点击「删除」
        若需删除远程分支,勾选「同时删除远程分支」,点击「确定」(仅管理员或分支创建者操作)
 

15.SSH密钥配置(免重复登录,提升协作效率)

 
(1).配置目的
 
使用SSH地址推送/拉取时,无需每次输入Gitee用户名和密码,且传输更安全(避免密码泄露风险)
 
(2). 完整配置步骤
 
      生成SSH密钥对
 
          右键桌面→「Git Bash Here」(需安装Git,TortoiseGit依赖Git环境)
          输入命令: ssh-keygen -t rsa -C "你的Gitee注册邮箱" (替换为自己的邮箱,用于标识密钥)
          连续按3次回车:第一次询问密钥保存路径(默认路径即可,无需修改),第二次和第三次是设置密钥密码(为空则免密登录,推荐为空)
          生成成功后,会提示密钥保存路径(默认:C:\Users\你的电脑用户名.ssh\),该文件夹下有两个文件:
-  id_rsa :私钥(不可泄露给他人,不可删除)
-  id_rsa.pub :公钥(需上传到Gitee)
 
(3)上传公钥到Gitee
 
         找到 id_rsa.pub 文件,用记事本打开,复制全文(包括开头的 ssh-rsa 和结尾的邮箱)
         登录Gitee→点击右上角头像→「设置」→「SSH公钥」
         在「标题」中填写标识(如“我的笔记本电脑”),「公钥」框粘贴复制的内容,点击「确定」
         验证配置:打开Git Bash,输入命令 ssh -T git@gitee.com ,首次连接会提示“是否继续连接”,输入 yes 回车;若显示“Hi 你的Gitee用户名! You've successfully ...”,说明配置成功
 
(4)使用SSH地址操作远程仓库
 
配置成功后,推送/拉取时选择远程仓库的SSH地址(Gitee仓库页面→「克隆/下载」→「SSH」→复制地址),即可免密操作,无需再输入账号密码

 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐