MGit 完整指南:在手机上完成克隆、提交与推送的 Android Git 客户端

MGit 完整指南:在手机上完成克隆、提交与推送的 Android Git 客户端 MGit 完整指南在手机上完成克隆、提交与推送的 Android Git 客户端【免费下载链接】MGitA Git client for Android.项目地址: https://gitcode.com/gh_mirrors/mg/MGit周五下午外场回来的地铁上测试同学反馈线上按钮错位。改动只有两行但笔记本还在公司周一之前没法进库。MGit 是一个开源的 Android Git 客户端把克隆仓库、查看提交历史、暂存提交、推送远程这类 Git 操作搬到手机和平板上让你在离开电脑的时候也能处理手头的版本控制问题。MGit 是开源项目 SGit 的延续要求 Android 5.0 及以上覆盖克隆、浏览文件、切换分支、合并、rebase、cherry-pick 等本地操作并支持 HTTP、HTTPS、SSH 三种协议同步远程仓库。项目目标是在手机、平板、笔记本三种形态上都可用主代码位于app/src/main/java/me/sheimi/sgit/目录旧模块以 Java 为主新模块用 Kotlin 编写。选择安装渠道并配置提交者身份渠道适合谁说明Google Play普通用户自动更新安装即用F-Droid在意隐私的用户开源渠道无广告源码构建开发者git clone https://gitcode.com/gh_mirrors/mg/MGit后用 Android Studio 构建首次启动时 MGit 会申请存储权限这是读写仓库文件的前提直接授予即可。接着进入设置填写提交者姓名和邮箱建议使用与远程平台一致的邮箱团队成员在提交历史里能清楚识别是谁改的。设置里还能改仓库的默认存放目录MGit 把所有仓库统一存在同一个目录下新增仓库时只需输入短名字不需要完整路径。设置项定义在 preferences.xml。克隆一个远程仓库并查看提交历史主界面点右下角的“”按钮选择克隆填入远程地址和本地名称后点“Clone”。如果远程仓库需要认证会弹出凭证输入框可勾选保存用户名和密码避免每次操作都重填。两种常用地址写法SSH: ssh://usernameserver_name/path/to/repo HTTPS: https://server_name/path/to/repo有个容易忽略的细节SSH 地址必须带上用户名。MGit 默认以 root 账户连接漏写时几乎必然报权限错误。非标准端口写成ssh://usernameserver_name:port/path/to/repo。仓库列表界面由 RepoListActivity.java 实现克隆进度、可取消等状态由 CloneViewModel.kt 管理。克隆完成后进入仓库可以看到几个页签状态当前有哪些文件变动、文件浏览当前分支的文件、提交提交历史。点某一条提交能看到该次修改的具体差异长按提交记录则弹出 cherry-pick 等操作。注意首次克隆会拉取全部分支大仓库在弱网下需要多等一会儿。暂存、提交并推送完成一次小改动在“状态”页签里修改、新增、删除的文件都会列出状态标识。勾选本次要提交的文件加入暂存区index即 git 提交前的缓冲区再点提交输入提交信息后选择“Commit”只提交到本地或“Commit and Push”提交并直接同步到远程。对团队友好的信息写法是类型: 简短描述例如fix: 修复移动端按钮偏移类型限定在 feat、fix、docs、refactor 这类词内提交历史扫一眼就能看懂。1.5.7 版本起 MGit 不再内置文本编辑器。改文件内容时需要在文件上选择外部编辑器打开任何支持 File Provider 机制的编辑器都可以用。编辑保存并返回 MGit 后改动会自动反映在状态页签再走暂存和提交流程。这个“返回”动作很容易被漏掉编辑完记得切回应用。提交、推送等操作都跑在可取消的后台任务里例如提交由 CommitChangesTask.java 实现推送由 PushTask.java 实现。分支切换、合并与回滚提交分支列表里可以检出本地和远程分支检出即切换分支、从当前位置新建分支合并其他分支后推送合并结果。提交整理方面rebase重排提交顺序和 cherry-pick摘取单个提交到当前分支都可以直接操作。提交搞砸时用长按目标提交里的 Reset 回滚三种模式区别如下模式对改动的处理Soft保留改动且仍留在暂存区Mixed保留改动但移出暂存区Hard丢弃改动不可恢复拿不准时先用 Soft确认状态无误再决定是否继续。访问私有仓库一般走 SSH。在 SSH 密钥管理界面可以生成密钥对私钥可加密码保护把公钥贴到服务器账号设置后即可用 ssh:// 地址克隆。相关逻辑见 PrivateKeyManageActivity.java 与 PrivateKeyUtils.java。五个容易踩的坑最常见的是 SSH 地址写错漏写用户名时认证失败的表现和“密码错误”几乎一样所以连不上先核对地址格式再怀疑密码。第二个是 HTTPS 认证失败部分平台已不支持登录密码需要用个人访问令牌当密码填了旧密码必然失败。第三个是提交者身份没填提交会带错邮箱远程仓库也可能拒收。第四个是空间问题首次克隆会下载完整历史和所有分支含二进制文件多的仓库可能有好几个 G手机空间有限时先估一下仓库体积。最后是合并冲突MGit 会标出冲突文件用外部编辑器打开找到、、标记保留正确内容、删掉标记再把文件加入暂存区合并即完成。MGit 以 GPLv3 协议开源主代码在app/src/main/java/me/sheimi/sgit/下欢迎提交问题报告和代码贡献——项目要求 pull request 必须关联一个已存在的 issue且所有用户可见文案要放进字符串资源文件。【免费下载链接】MGitA Git client for Android.项目地址: https://gitcode.com/gh_mirrors/mg/MGit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考