概述
上节讲到嘟宝工程无线调试与修改应用图标,这节我们需要把源码同步到GitHub开发。Git是目前世界上最先进的分布式版本控制系统(没有之一)。
在团队开发中,通常使用 Git 进行版本管理:每个成员在本地创建分支进行独立开发,完成后通过合并(merge)或提交 Pull Request 到主分支,团队成员再进行代码评审与讨论,最终统一合入代码库;整个过程既保证了多人并行开发互不干扰,又能清晰记录每次修改历史,提高协作效率和代码质量,常见协作平台如 GitHub。它的核心功能如下:
- 代码托管,支持公开仓库(开源)和私有仓库,代码云端存储,随时访问
- 版本控制,记录每次代码变更,支持分支(Branch)、合并(Merge),可以回滚到任意历史版本
- 团队协作 Pull Request(代码评审),Issue(任务/问题管理),Code Review(代码审核)
配置git
在开发项目嘟宝过程中,每次修改,功能的完善,都需要将代码提交到github上。一是同他人合作开发时,方便快速合并代码,而是在自己版本库中轻松查看开发过程,提交、回滚、对比代码。 首次配置git远程库,需要生成配置ssh秘钥,若已配置,此操作可忽略。
- 生成ssh 私钥与秘钥,在本地通过ssh-keygen命令生成。
- 将生成秘钥上传到github账户中
- 将私钥添加到 ssh-agent当中 首先下载工具, GitHub Desktop。安装完成后打开git bash工具。
检查是否配置github用户信息
ssh -T git@github.com
查看是否首次使用git,若是提示:Hi your-username! You've successfully authenticated...,表明已经配置过
检查是否已经创建私钥、秘钥
ls ~/.ssh
检查电脑上是否已经生成过私钥、密钥,如果看到了 id_rsa 和 id_rsa.pub(或 id_ed25519 和 id_ed25519.pub):说明已有密钥,若有则可以使用它,也可再创建新的。如下图:
创建私钥、秘钥
// 创建
ssh-keygen -t ed25519 -C "your_email@example.com"
// 查看秘钥
ls ~/.ssh
其中ed25519 与your_email@example.com需要填写自己的信息。然后一路按回车,使用默认设置即可。
生成私钥、秘钥如下图:
其中id_ed25519私钥,id_ed25519.pub是秘钥。
将生成秘钥上传到github账户中
查看秘钥的内容:
cat ~/.ssh/id_ed25519.pub
如下图:
将该内容复制到剪切板中。打开github
- 登录 GitHub,点击右上角头像 -> Settings。
- 左侧菜单栏找到并点击 SSH and GPG keys。
- 点击绿色的 New SSH key 按钮。
- title 随便填,Key type选择默认。Key 粘贴刚才复制的内容,最后点击 Add SSH即可
如下图完成添加:
嘟宝工程配置git远程库
创建远程仓库
首先,github创建仓库,DuBao。登录成功后,打开home,左侧点击new。如下图
填写DuBao,点击Create repository,创建成功。创建成功后,打开仓库Dubao,复制仓库地址,android配置远程库所用。如下图:
创建本地仓库
打开Android studio 嘟宝工程。流程如下:
- 将嘟宝目录初始化为本地仓库
- 添加远程仓库,即github创建的DuBao仓库
- 将文件嘟宝目录内的文件添加到本地仓库中
- 同步github远程库
初始化本地仓库
在 Android Studio 菜单栏,点击 VCS -> Create Git Repository,在弹出的窗口中选择你的项目根目录,如下图:
选择嘟宝工程所在目录。
添加创建完成之后,所有的文件都标红,这是因为没有文件添加到本地仓库当中,如下图:
添加远程仓库
在菜单 Git -> Manage Remotes 中,点击 + 号,填入你在 GitHub 上新建仓库的 URL,如下图:
添加文件到本地仓库
在添加文件之前,需要指明哪些文件不用同步到git中去,如build文件夹内的内容,该配置是在.gitignore文件中声明,如下图:
*.iml
.gradle
/local.properties
/.idea/caches
/.idea/libraries
/.idea/modules.xml
/.idea/workspace.xml
/.idea/navEditor.xml
/.idea/assetWizardSettings.xml
.DS_Store
/build
/captures
.externalNativeBuild
.cxx
local.properties
上诉声明的文件将不被同步到git中。右键项目,选择 Git -> Commit Directory,如下图
首次提交,将所有文件都选中,点击按钮Commit,提交到本地仓库。若要提交到远程仓库,选择Commit and Push...按钮。
至此git仓库配置使用完成,我们将在日后的开发当中,更加细致的使用git完成开发。
创建分支
Git 中的分支(branch),本质上是为了让开发工作并行进行且互不干扰,每个人在各自的分支内开发,开发测试完成合并到main分支或master分支当中。
- 创建分支,名称为zilong
- 将文件push到zilong分支当中
创建分支,选择菜单git > New Branch,
创建完成后,点击右下角git工具,选择分支zilong,右键push源码,将源码推送到远程分支中。