Android Studio中Git和GitHub使用详解
一、Git和GitHub简述
1.Git
分布式版本控制系统,最先使用于Linux社区,是一个开源免费的版本控制系统,功能类似于SVN和CVS。Git与其他版本管理工具最大的区别点和优点就是分布式;
git是采用分布式版本库机制,不需要每次都将文件推送到版本控制服务器,每个开发人员都可以从服务器中克隆一份完整的版本库到本地,不用完全依赖于版本控制服务器。【优点:1.代码的发布和合并更加便捷;2.可以离线进行文件提交、创建分支以及查看历史版本信息等操作】
Git在文件保存形式上也优于其他的版本控制工具。之前的版本控制工具保存的是版本之间的差异点,而git关注于文件数据整体的变化,直接将文件提交时的数据生产快照,并使用SHA-1加密算法保证数据的完整性。
2.GitHub
GitHub是基于Git的项目托管平台,一个开放的网站。我们在本地使用Git建立的仓库是一个本地仓库,而GitHub就是一个远程仓库,而且是一个大家公共的仓库,只要注册一个GitHub账号,就可以才平台上创建项目仓库。本地可以通过git可视化工具或是命令行进行项目的管理,便于对人协同。
二、Git的下载与安装
1.Git的下载地址:https://git-scm.com/download/
根据自己的系统去下载对应的版本,然后进行软件安装,记住软件的安装地址。
2.软件安装成功之后,鼠标右键单击会出现“Git GUI here”【Git可视化操作界面】和“Git Bash here”【Git 命令操作界面】。
三、Git环境配置
在使用Git之前需要先配置环境,否则在Push代码到GitHub的时候会出错。Git 提供了一个叫做 git config 的工具,专门用来配置或读取相应的工作环境变量。
用户信息的配置
1.直接点击Git Bash Here进入命令窗口设置:
2.配置个人的用户名称和电子邮件地址,并查看配置信息
$ git config --global user.name "这里是你名字"
$ git config --global www.yongshiyule178.com/ user.email "这里是你的邮箱"
$ git config --list
这里写图片描述
四、Android Studio牵手Git
接下来的很多操作,一如建立本地仓库,文件的添加,文件的提交,文件的Push到Github都是可以使用命令行和git视图界面进行完成,但是本次只讲述AS的实现方法。
1.在AS中配置Git
(1) 使用Ctrl+Alt+S 快捷键进入AS的设置界面;
(2)选择Version Control,点击Git进行Git的配置:
这里写图片描述
【这里的path已经自动获取了git的安装地址,如果没有填充的情况我们要选择Git的安装路径】
(3)点击Test测试Git是否配置成功,以下结果表示配置成功:
这里写图片描述
2.在AS中配置GitHub
在配置GitHub之前必须先拥有GitHub账号,可以去github.com中注册账号。
(1)在AS的设置界面中选择Version Control,点击GitHub进行GitHub的配置;
(2)Host:github.com是默认的,Auth Type:Password 选择密码方式登录
Login和Password是GitHub的账号和密码,点击Test测试连接Github是否成功,可能会再次验证密码;
(3)如果弹出Success对话框表示连接Github成功。
这里写图片描述
3.在AS中给项目创建本地仓库
svn,cvs等版本管理工具都是将文件资源以及版本库放在服务器端,如果需要版本的更新以及代码的对比就需要连接服务器。然而Git可以创建本地仓库,我们可以在本地进行代码进行提交以及和以前的版本进行对比。这是如何实现的了,正是通过建立本地的git版本库完成的。下面为大家讲解如何在As中为当前项目或是其他文件夹建立git本地版本库。
如何将AS中当前项目创建为本地仓库
1.在工具栏点击VCS,选择“Import into Version Control”【就是将项目导入到版本控制系统】,选择“Create Git Repository”。
这里写图片描述
2.选择要创建Git仓库的项目或文件夹,点击OK完成创建。
这里写图片描述
3.创建Git仓库成功的标志是在指定文件的根目录创建了一个.git文件夹。这个文件夹是一个隐藏文件夹,有的系统默认是不显示隐藏文件夹的。找到对应系统显示隐藏文件夹的方法,显示隐藏文件即可看到.git文件。
这里写图片描述
4.Win10系统打开隐藏文件夹的方法【本人用的win10,而且也遇到了.git文件看不到的情况,在几经尝试后才发现问题是隐藏文件夹不显示。】
打开“我的电脑”,在顶部选择“查看”,在图片中红色标记的地方把“隐藏的项目“前面的对话框勾选即可。
这里写图片描述
5.新建本地git仓库成功之后,项目中文件名由白色变为红色,表示这些文件还没有添加到暂缓区。 .gitignore中注册的文件除外。gitignore顾名思义就是忽略这里面的文件,关于gitignore会在后面详细讲解。
这里写图片描述这里写图片描述。
4.在AS中对文件进行一些Git操作
git的基本使用是add到暂缓区,commit到本地仓库,push到远程仓库。接下来我们详细讲解。
在Git仓库建立成功之后,选择项目或是其中的文件鼠标右键点击,会显示“Git”功能项,点击“Git“可以看到Git菜单栏,在这里我们先看”Commit Directory”和”+Add“。
这里写图片描述
1.添加文件到暂缓区【+Add】
(1) 选择整个项目或是项目中部分文件,点击”+Add“将文件添加到暂缓区。添加成功之后,文件名由红色变为绿色,表示已添加未提交。如下图
这里写图片描述
(2)新建文件自动添加。上面所讲是已存在文件添加到暂缓区,在新建文件的时候就不需要如此了,当然如果你喜欢麻烦的话这条路还是可以走得通的。如果项目已经创建git仓库成功,在你新建文件的时候,AS会提示你是否自动添加到Git暂缓区。如下图,我们当然选择自动添加并且用不提醒。
这里写图片描述
2.commit到本地仓库
点击Commit www.xingchexiu.com Diretory,进入Commit Change视图。在图片中,我对视图中的元素进行了介绍。
这里写图片描述
Commit Message:这个和其他版本工具提交代码一样,介绍一下改动点
Before Commit:就是在代码提交 的一些操作
Reformat code :重新格式化代码
Rearrange code:重新整理代码
Optimize imports:优化导入包
Perform code analysis:执行代码分析[ 默认选择],在代码提交之前先进行分析,如果有error或warning都会有提示
Check TODO(show all):检测需要修改的代码[显示所有默认选择],就是检查代码中的//TODO,如果存在就会提示
clean up: 清除所有
Update copyright:更新版权
至于提交也有三种方式:
Commit:直接提交到本地版本库
Commit and Push:提交到本地版本库并提交到远程版本库
Create Patch:创建Git补丁
(2)进入Commit 视图有多种方法
- 使用快捷键Ctrl+K
- 点击AS顶部工具栏VCS提交按钮【标红】;
- 这里写图片描述
(3)一般情况下我们直接点击Commit即可,提交成功之后文件名由绿色变为白色.如果我们改变文件内容,文件名会由白色变为蓝色,如下图:
这里写图片描述
3.Push到远程仓库
要将项目Push到远程仓库,我们必须先拥有一个远程仓库。我们可以注册Github或是oschina,在上面创建远程仓库。在这里我们选择国际化平台github。
(1)创建仓库
这里写图片描述
Repository name:远程仓库名
Description:说明
Public/Private:这个项目是否被公开
Add .gitignore:创建.gitignore文件 【选择默认,创建一个空文件】
Add a license:创建一个认证【默认就好】
(2)仓库创建成功之后如下:
在SSh后面即为远程仓库的Git地址,下面会用到。
这里写图片描述
(3)进入Push的方法有以下几种:
远程仓库建立成功之后,我们就开始Push项目,记得我们Commit的时候有一个Commit and Push选项,这是进入Push视图的一种方法;
最开始我们就提到Git菜单,打开最下面的一项Repository,就可以看到关于仓库的一些操作,其中Push就是Push入口;
这里写图片描述
使用快捷键Ctrl+Shift+K进入Git视图
(4)Git视图
这里写图片描述
如果没有定义远程仓库地址,通过Define www.xingchexiu.com Remote设置远程仓库的Name和URL,就是我们在创建GitHub仓库时的仓库名和远程地址。
(5)push成功可以在GitHub中看到上传的项目
这里写图片描述
到此为止,已经成功的完成在AS中创建本地仓库、将文件添加暂缓区、将文件提交到本地仓库、将文件Push到Github中。在下一篇文章中会继续介绍AS和Git,比如我们怎么将Github中文件Pull到本地、克隆远程git、git创建分支、git代码对比和合并、git的.gitinogre文件等等
Android Studio中Git和GitHub使用详解的更多相关文章
- Android Studio系列教程五--Gradle命令详解与导入第三方包
Android Studio系列教程五--Gradle命令详解与导入第三方包 2015 年 01 月 05 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://s ...
- Android SDK中的Support兼容包详解
这篇文章主要介绍了Android SDK中的Support兼容包详解,本文详细区分了Support Library的版本区别.各种Theme的概念和使用注意事项等内容,需要的朋友可以参考下 背景 来自 ...
- 【转】Android Studio中Git的配置及协同开发
一. Android Stutio配置git setting–>Version Control–>Git–>Path to Git executable中选择git.exe的位置 ...
- Android Studio中Git的配置及协同开发
转载请标明出处: http://blog.csdn.net/xmxkf/article/details/51595096 本文出自:[openXu的博客] 目录: 一 Android Stutio配置 ...
- Git连接GitHub仓库详解
[Annotation]本文将从标题八开始,因为前七个标题是关于Git的基本操作,如果对Git的基本操作不了解的话,可以点击下方链接先看一下Git怎么使用. 关于Git的详细使用 八:创建SSH Ke ...
- Android 开发中的屏幕适配技术详解
本文主要介绍Android开发中比较头疼繁琐的一个问题-屏幕适配问题.主要从适配原因.基本核心概念.适配方法等方面介详细 介绍从而是的深入或者进一步对Android屏幕适配技术的掌握和理解. 真题园网 ...
- 全面介绍Android Studio中Git 的使用(一)
来源 :http://blog.csdn.net/gao_chun/article/details/49817229/
- Mac系统下,在android studio中使用Github版本管理
1.下载并安装github客户端http://git-scm.com/download/ 2.打开android studio,测试github是否使用ok 点击"test",如果 ...
- 如何在Android Studio中使用Gradle发布项目至Jcenter仓库
简述 目前非常流行将开源库上传至Jcenter仓库中,使用起来非常方便且易于维护,特别是在Android Studio环境中,只需几步配置就可以轻松实现上传和发布. Library的转换和引用 博主的 ...
随机推荐
- Codeforces Edu Round 63(Rated for Div. 2)
感觉现在Edu场比以前的难多了…… A: 温暖人心 /* basic header */ #include <iostream> #include <cstdio> #incl ...
- Zabbix监控系统部署:源码安装
1. 概述1.1 基础环境2. 部署过程2.1 创建用户组2.2 下载源码解压编译安装2.2.1 下载源码解压2.2.2 YUM安装依赖环境2.2.3 编译安装最新版curl2.2.4 更新GNU构建 ...
- PHP 设置调试工具XDebug PHPStorm IDE
先下载PHP扩展Xdebug https://xdebug.org, 可以复制自己的phpinfo粘贴到https://xdebug.org/wizard.php中, 会生成需要下载的版本, php. ...
- 前端安全之XSS
XSS定义 XSS, 即为(Cross Site Scripting), 中文名为跨站脚本, 是发生在目标用户的浏览器层面上的,当渲染DOM树的过程成发生了不在预期内执行的JS代码时,就发生了XSS攻 ...
- iOS APP 中H5视频默认全屏播放问题解决
问题描述:在Android中,视频可以正常在H5页面局部播放,iOS中则自动切换至全屏模式. 查看资料得以解决,20190301记录下来. 解决方法:IOS10及以后,在 video标签页中只包含 w ...
- C++STL——优先队列
一.相关定义 优先队列容器与队列一样,只能从队尾插入元素,从队首删除元素.但是它有一个特性,就是队列中最大的元素总是位于队首,所以出队时,并非按照先进先出的原则进行,而是将当前队列中最大的元素出队.这 ...
- 同步手绘板——关于/dev/graphics/fb0权限的获取
需要先将手机进行root,接着通过代码将/dev/graphics/fb0文件修改为可读的权限
- Zookeeper 3.4.8分布式安装
1.机器信息 五台centos 64位机器 2.集群规划 Server Name Hadoop Cluster Zookeeper Ensemble HBase Cluster Hadoop01 ...
- 广商博客冲刺第四五天new
第三天沖刺傳送門 第六七天沖刺傳送門 以上的前台设计架构已经完成了,现在来完成前台的安卓设计. 首先我们配置了Android SDK Manager 使得程序能在安卓环境下运行. 这就完成了前台安卓的 ...
- 第三个Sprint冲刺第6天
成员:罗凯旋.罗林杰.吴伟锋.黎文衷