UGit 正确操作流程
适用于 Unity 美术项目的日常文件上传、下载与冲突处理。
Pull(拉取):把远程更新真正下载并合并到当前本地分支,会改你本地文件。
Fetch(获取):先看看远程有没有别人更新,不改你本地文件。
Push推到远程仓库
一、开始工作前:先下载最新内容
每次开始修改前都执行一次:
- 打开 UGit,确认当前仓库和分支正确。
- 点击顶部的拉取 / Pull。
- 确认拉取成功,UGit 的“变更”列表应为空。
- 再打开 Unity 开始修改。
说明:
- Fetch / 获取:只检查远程有没有新提交,不把文件更新到本地。先看看远程有没有别人更新,不改你本地文件。
- Pull / 拉取:下载远程提交并更新本地文件。日常开始工作优先用 Pull。把远程更新真正下载并合并到当前本地分支,会改你本地文件。
- 如果 Pull 后 Unity 正在打开,建议等待资源刷新完成后再编辑。
二、上传文件的正确流程
完成资源制作后,按下面步骤操作:
在 Unity 中保存资源和场景。
回到 UGit 的变更页面。
会看到修改后的变更内容; 如果是删除内容 需要.meta一起提交
检查变更文件列表和右侧差异:
- 只勾选本次需要提交的文件。
- Unity 新增、移动或删除资源时,通常资源文件和对应的
.meta都要一起提交。 - 不要把临时文件、个人配置文件或其他同事的改动误提交。
填写提交说明,清楚说明做了什么,例如:
把修改文件添加到 待提交里
点击提交 / Commit。
如果不勾选 “推送到远程” 就是先提交到commit ,然后点击推送按钮再进行推送(PUSH)
如果勾选 “推送到远程” 就是直接推送(PUSH)
点击推送 / Push,把提交上传到远程仓库。
如果勾选 “推送到远程” 就是直接进行推送(PUSH)
确认 Push 成功;必要时到仓库网页或提交历史确认自己的提交已出现。
日常口诀:
Pull → 修改并保存 → 检查变更 → Commit → Push三、Push 被拒绝时怎么做
Push 被拒绝通常表示:远程已经有别人先上传了新提交,而你的本地还没有。
按以下流程处理:
- 不要反复点击 Push。
- 点击Pull,先下载其他同事的最新提交。
- 如果 Pull 成功且没有冲突:
- 检查自己的文件是否正常。
- 再点击Push。
- 如果 Pull 提示冲突,按下一节处理。
四、发生冲突时的处理流程
冲突代表:你的本地修改与远程修改碰到了同一个位置,Git 无法自动决定保留哪一份。
正确处理步骤:
- 在 UGit 中确认冲突文件列表。
- 暂停继续编辑其他文件,先处理冲突。
- 双击冲突文件,打开 UGit 的冲突解决界面。
- 对每个冲突位置决定最终结果:
- 保留本地:保留自己的内容。
- 保留远程:保留同事上传的内容。
- 手工合并:两边内容都需要时,人工编辑成最终版本。
文本文件常会显示下面的冲突标记:
<<<<<<< 本地版本 你的内容 ======= 远程内容 >>>>>>> 远程版本处理完后,文件中不能残留:
<<<<<<< ======= >>>>>>>保存文件。
在 UGit 中点击标记为已解决 / Resolved。
检查最终文件内容和变更列表。
点击提交 / Commit,提交说明例如:
Fix: 张三 - 解决材质说明冲突点击Push。
如仍被拒绝,重复
Pull → 处理 → Commit → Push,直到成功。
五、Unity 美术资源发生冲突时
以下文件通常不适合手工合并:
.unity .prefab .fbx .psd .png .tga .jpg .wav .mp4遇到这类资源冲突时:
- 不要随意手工编辑文件内容。
- 先联系该资源的另一位修改者,确认哪个版本应保留。
- 在 UGit 冲突界面选择“保留本地”或“保留远程”的正确版本。
- 如果两人的修改都需要,通常由资源负责人在 Unity、Maya、Max、Photoshop 等工具中重新整合后,再提交最终资源。
- 资源对应的
.meta文件也必须与最终资源版本保持一致并一同提交。
推荐做法:
- 修改大型二进制资源前先在群内说明。
- 如果项目启用了 Git LFS 文件锁,修改前先锁定资源。
- 场景、Prefab、角色 FBX、PSD 等文件尽量避免多人同时编辑。
六、已 Push 错误内容时
不要使用强制推送覆盖远程历史。
正确方式:
- 在 UGit 的提交历史中找到错误提交。
- 右键选择Revert / 还原提交。
- 这会生成一条新的“反向提交”,安全撤销错误内容。
- Push 这个新的提交到远程。
七、提交前最终检查清单
[ ] 已 Pull 最新版本 [ ] Unity 中已保存资源 [ ] 只勾选本次需要提交的文件 [ ] 新增/移动/删除资源时已包含 .meta [ ] 没有提交临时文件、缓存文件或他人的内容 [ ] 提交说明清楚 [ ] Commit 后已 Push 成功八 创建分支
1保持当前在master,先点击上方“检查更新”,确保本地master已更新。
2点击左侧“分支”标题右侧的+(或点击顶部master下拉菜单)。
3 选择“新建分支”,名称输入001。
4 基于分支选择master,并勾选/选择“创建后切换到此分支”,确认。
5 此时左侧“本地”会出现001,顶部当前分支也会变成001。
6 点击右上角“推送”。
7 在弹窗中确认远程仓库为origin、远程分支名为001,选择“设置上游/跟踪远程分支”(如果有该选项),然后确认推送。
推送成功后,点击左侧分支栏的刷新按钮;在“远端 → origin”下就能看到001。
九 分支合并到Master
- 切到
001分支,完成文件修改。 - 在“变更”页暂存文件,填写提交说明,点击“提交到 001”。
- 点击右上角分支下拉,切换到
master。 - 先点击“检查更新”,把远程
master的最新提交拉下来。 - 在左侧“本地”分支列表中,右键
001,选择类似“合并到当前分支 / Merge into current branch”的菜单项。
- 确认目标是当前
master,来源是001,执行合并。
- 没有冲突时,UGit 会生成合并结果;点击右上角“推送”,将
master推到origin/master。
如果出现冲突:
- UGit 会在“变更”页列出冲突文件;
- 打开并选择“使用当前分支(master)”“使用传入分支(001)”或手动编辑;
- 标记为已解决后,提交这次合并;
- 再推送
master。
合并完成且确认远程master正常后,001可以保留,也可以在本地和远程删除。