在GitLab网站点击导航条上的 “+” 即可进入创建项目的页面,然后根据提示填写相应信息,如下图:

  • Project path:项目路径

  • Project name:项目名称

  • Project description (optional):项目描述(可选项)

  • Visibility Level:可见登记,Private表示私有的,只有你自己或者组内的成员能访问,Internal表示所有登录的用户,Public表示公开的,所有人都可以访问。

创建完成后是这样的:

5 Android Studio中使用Git

======================

5.1 将项目上传到GitLab

本地已创建好的项目为Blure_background_demo

5.1.1 配置忽略文件

Android Studio创建项目后会自动生成.gitignore文件,这个文件可以用来忽略那些不用加入到仓库的文件。项目根目录下与module目录下都会生成该文件,如下:

一般情况下我们只需要将项目根目录下的/.idea/workspace.xml与/.idea/libraries改成.idea即可,其他没有特殊要求就用默认的。如下:

修改前:

修改后:

5.1.2 初始化本地Git仓库

点击Android Studio顶部菜单栏上的VCS–>Import into Version Control–>Create Git Repository,如图:

然后选择需要初始化的项目根目录,如图:

初始化之后发现文件名由原来的白色变成了红色,这表示文件已经被git跟踪了,但是并没有添加到仓库中。如图:

5.1.3 将本地Git仓库已与远程仓库进行关联

打开项目文件夹,在该文件夹中打开Git Bash。输入如下命令后就代表本地Git仓库已与远程仓库进行关联了。

git remote add origin git@gitlab.com:XXXXXXX/blure_background_demo.git

命令的来源如下

操作的具体步骤如下:

1.进入下面的目录,右键—Git Bash Here

2.然后在命令窗口输入下面的命令

其中git@gitlab.com:XXXXXX/blure_background_demo.git为我们项目的远程地址,可以到我们前面创建项目中复制,参考上面的命令来源。

5.1.4 添加文件

选中项目的根目录,点击Android Studio顶部菜单栏上的VCS–>Git–>Add…,如下图:

添加文件后发现文件名由原来的红色变成了绿色,说明已经将文件添加进仓库了。如下图:

5.1.5 提交文件

每次提交前需要先更新项目,原因是如果是多人合作的项目,需要先将远程仓库中他人提交的最新代码更新到本地仓库。然后选中Merge,点击OK,如果本地代码与远程代码有冲突就会弹出冲突提示,根据需求Merge即可,如图:

Update后就可以提交文件了,选中项目的根目录,点击Android Studio顶部菜单栏上的VCS–>Git–>Commit Directory…,如图:

然后会弹出如下提交框,这里可以选择你要提交的文件和填写提交信息,如图:

提交文件后发现文件名由原来的绿色又变成了最开始的白色,说明已经将文件提交上仓库了。如图:

5.1.6 将提交的文件推送到远程仓库

选中项目的根目录,点击Android Studio顶部菜单栏上的VCS–>Git–>Push…,如下图:

点击Push后,就可以在GitLab上看到刚刚推送的内容了。如下图:

5.2 从GitLab上clone项目

首先到GitLab上复制项目的地址,如图:

然后点击Android Studio顶部菜单栏上的VCS–>Checkout from Version Control–>Git ,如图:

最后填写相应的信息即可,如下图:

  • Git Repository URL:填写刚刚复制的项目地址

  • Parent Directory:项目路径

  • Directory Name:项目文件夹名称

点击clone后,项目就clone下来了!

5.3 分支管理

5.3.1 分支策略

在实际开发中,我们会用到很多分支。这里说下各分支的作用。

  • master分支:最稳定的分支,保存需要发布的版本,不在该分支上做任何开发。

  • dev分支:开发分支,保存最新的代码,平时开发就在该分支上。当某个版本开发完成后就合并到master分支,然后在master分支进行版本发布。

  • bug分支:用来修复bug的分支,一般是线上版出现bug的时候,从master分支创建一个新的bug分支进行bug修复,修复完成合并到master分支和dev分支(保证master分支与dev分支同步),然后删除该bug分支。

实际开发中我主要用到这三个分支,当然每个人都不同,有些人还会细分到功能分支,预发分支。其中master分支与dev分支都需要推送到远程,为了其他成员能共同开发,bug分支则放在本地即可,你自己修复完bug删掉即可。

5.3.2 分支操作

1.创建分支

点击Android Studio顶部菜单栏上的VCS–>Git–>Branches…,如图:

然后选择New Branch,输入分支的名字,例如“dev”,如图:

点击OK,分支dev就创建成功了,并且默认切换到该分支。重复上面的步骤可以看到当前分支显示的是dev,如图:

2.推送分支到远程

这时候我们在dev分支上修改内容,然后按照前面说的提交文件(步骤5.1.5),将提交的文件推送到远程仓库(步骤5.1.6)即可。如图:

点击push,然后就可以到Gitlab上看到我们刚刚推送的dev分支了,如图:

3.切换分支

dev分支上版本V1.0开发完了,需要将代码合并到master上进行发布。因为当前在dev分支,所以需要先切换到master分支,点击Android Studio顶部菜单栏上的VCS–>Git–>Branches…,打开Git Branches窗口,然后选择本地分支栏下的master->origin/master,然后点击Checkout。如图:

4.合并分支

第三步已经将分支切换到master了,现在进行分支合并。点击Android Studio顶部菜单栏上的VCS–>Git–>Branches…,打开Git Branches窗口,然后选择远程分支栏下的origin/dev,然后点击Merge。如图:

这个时候到GitLab上却发现master分支上并没有合并到dev分支修改的内容,那是因为刚刚只是将远程dev分支的内容合并到本地master分支,本地master分支还没有push到远程,push一下就可以了, 如图:

这个时候发现GitLab上master分支与dev分支是保持一致的了。然后将最新的master分支打包发布即可!

5.删除分支

删除本地分支:

点击Android Studio顶部菜单栏上的VCS–>Git–>Branches…,打开Git Branches窗口,选中本地dev分支,选择Delete即可。如图:

5.4 标签(Tag)管理

标签一般是用于标记某个发布的版本, 例如你发布了版本v1.0,这个时候会打一个v1.0的Tag,主要是方便以后查看和管理某个版本的代码。

1.创建标签

点击Android Studio顶部菜单栏上的VCS–>Git–>Tag…,如图:

![](https://img-blog.csdnimg.cn/20200524230725741.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shad

《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享

ow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2F1Z2Z1bg==,size_16,color_FFFFFF,t_70)

然后填写Tag名称与Tag信息,点击Create Tag即可创建本地标签。其中Commit可填写以前某次提交记录的id,表示在该次提交上打Tag。如果不填表示Tag打在最新提交的commit上。如图:

2.推送标签到远程

点击Android Studio顶部菜单栏上的VCS–>Git–>Push…,如图:

最后

到GitLab就可以看到刚刚创建的Tag了,如图:

3.checkout某个标签的代码

点击Android Studio顶部菜单栏上的VCS–>Git–>Branches…,如图

然后选择Checkout Tag or Revision…,最后在弹出的Checkout框中填入Tag的名称即可。如图:

Android Studio中使用Git——结合GitLab,Android热修复原理相关推荐

  1. android studio clone 方法不能先用,Android Studio中使用git功能无法clone原因分析

    最近在使用git的时候发现一个非常诡异的问题,我用cmd命令行可以进行clone,push,pull等操作时都可以完美的成功,但是换到Android Studio中进行这些与远程库的操作的时候,就是各 ...

  2. android 模拟器应用未安装,当我在Android Studio中运行它时,Android应用程序未安装在模拟器或设备上...

    我正在开发Android应用程序.在我的应用程序中,我正在测试在设备和模拟器上运行的应用程序.这是我的第三个Android应用程序开发.当我开发其他应用程序时,应用程序会自动安装在设备上或模拟器上的启 ...

  3. 【我的Android进阶之旅】Android Studio 中 使用git提交代码报错:Can‘t commit changes from multiple changelists at once

    一.错误描述 今天在Android Studio中,Commit代码的时候报错了,然后解决了. 现在模拟复现下之前的错误,如下所示: 0 file committed, 2 files failed ...

  4. Android Studio中使用Git进行代码管理(分支、合并)

    打开Android Studio选择,选择从Git检出代码 也可以从VCS如下点击 去远程仓库复制地址,这里以码云Gitee第三方代码托管为例,类似Github的界面,点击右边复制项目地址 填一下配置 ...

  5. Android studio 中删除git 版本控制

    删除工程文件夹中的.git文件夹 setting-versioncontrol中 点击减号 删除

  6. android studio 中怎么写aspectj代码,Android Studio 使用 AspectJ 实践AOP

    Android Studio 官方暂时不支持aspectJ,不过这里用的一款gradle插件 aspectjx 配置在project的build.gradle里配置插件dependencies { c ...

  7. android.mk if else,gradle - 如何在Android Studio中使用我自己的Android.mk文件 - SO中文参考 - www.soinside.com...

    [我正在Android.mk文件中定义一些变量(我正在为编译器传递一些标志),但是每次构建项目时,Android.mk都会被覆盖.我假设Gradle是负责任的,我应该去那里看看吗? 如何使用我自己的A ...

  8. android studio中添加gif文件格式,利用Android Studio截屏和录制视频并转为gif

    前言:在写博客或者传项目到github上时放上一张gif图片更能表达出作者想要表达的内容,那么怎样可以方便的录制一张gif图片,就成了本篇博客要讨论的内容了. 这里使用Android Studio来制 ...

  9. android studio中的适配器,如何在Android Studio中测试回收器视图适配器

    有人可以帮我测试这个回收站视图适配器吗?我不想进行本地单元测试,但不知道如何开始? 以下是我的recyclerViewAdapter类: public class RecyclerViewAdapte ...

最新文章

  1. Flume基础及Flume高质量博客合集
  2. 基于锁相环的调制解调仿真实现
  3. 小学生python入门-小学生都开始学的Python编程到底是什么?
  4. JavaScript笔记 基础知识总结2
  5. 用c语言编写黎曼积分计算pi,C语言实现黎曼和求定积分
  6. BZOJ 3622 Luogu P4859 已经没有什么好害怕的了 (容斥原理、DP)
  7. 深度学习会不会被取代?深度学习必看发展史
  8. KafkaController 分区Rebalance平衡机制
  9. linux上编译sdl,Linux下安装、编译SDL
  10. 单智能体、多智能体强化学习基本概念及算法分类?为啥提出多智能体强化学习,现状?
  11. 程序员的笔记本选择推荐
  12. NVIDIA Geforce显卡和AMD Radeon系列显卡知识
  13. Android 网速实时监听
  14. <Android开发> Android vold - 第七篇 vold 的runCommand()方法解析
  15. Linux GccGcc-c++安装
  16. 引用feignClient对象项目启动异常-Consider defining a bean of type ‘com.xxx.service.xxxRemote‘ in your configura
  17. js数据类型转换(5)
  18. 健身课Day03-单侧臀腿力量训练
  19. 360欺骗4亿网民 胡乱解读“超级工厂”病毒(转载卡巴斯基网站)
  20. 桌面上什么都没有了怎么调出计算机,电脑开机后桌面上什么都没有是为什么,怎么办...

热门文章

  1. RAC集群启停的总结
  2. 腾讯云轻量应用服务器如何安装 Docker 并配置镜像加速源?
  3. [Android 性能优化系列]内存之终极篇--降低你的内存消耗
  4. HTML+CSS小实例(进度条)
  5. 哈工大2021软件构造lab1总结
  6. The first record --两次面试
  7. 农村宅基地审批管理系统
  8. 适合小白的pathon学习网站
  9. 护眼台灯国家标准是什么?国aa和国a台灯区别大吗
  10. StandardEngine[Catalina].StandardHost[localhost].StandardContext[]