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的转换和引用 博主的 ...
随机推荐
- (转)linux sudo 重定向,实现只有系统管理员才有权限操作的文件中写入信息
众所周知,使用 echo 并配合命令重定向是实现向文件中写入信息的快捷方式. 本文介绍如何将 echo 命令与 sudo 命令配合使用,实现向那些只有系统管理员才有权限操作的文件中写入信息. 比如 ...
- Log4j2使用笔记
log4j2是log4j的最新版,现在已经有很多公司在使用了.log4j2和log4j的优缺点对比,请自行百度. 上一篇笔记讲了关于log4j的使用.这篇笔记主要讲解log4 ...
- JavaWeb开发中采用FreeMarker生成Excel表格
最近做了一个需求,要求导出一个采购合同的Excel表格,这个表格样式比较多.由于是合同,这个Excel表格里面有好多格式要求,比如结尾处签字那部分就有格式要求.这里介绍种采用FreeM ...
- odoo 11导入外部数据过程记录
在开发过程中,遇见需要将SQL Server中的数据转移到Pg数据库的情况,那么如何做才能解决这一问题呢? 1.自己写代码,将数据从SQL Server到PG. 2.利用odoo自带的导入功能导入. ...
- Python基础(dict 和 set) 字典和set
dict Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度. 举个例子,假设要根据同学的名字 ...
- cmake 添加头文件目录,链接动态、静态库(转载)
来源网址:http://www.cnblogs.com/binbinjx/p/5626916.html 罗列一下cmake常用的命令. CMake支持大写.小写.混合大小写的命令. 1. 添加头文件目 ...
- [JDBC]ORA-01000: 超出打开游标的最大数(ORA-01000: maximum open cursors exceeded)
问题产生的原因: Java代码在执行conn.createStatement()和conn.prepareStatement()的时候,相当于在数据库中打开了一个cursor.由于oracle对打开的 ...
- c++多继承布局
1:多重继承 对于一个继承了多个base class 的对象,将其地址指定给最左端(也就是第一个)base class的指针, 情况将和单一继承时相同,因为两者都指向相同的其实地址.至于第二个或者更后 ...
- linux下文件加密方法总结
为了安全考虑,通常会对一些重要文件进行加密备份或加密保存,下面对linux下的文件加密方法做一简单总结: 方法一:gzexe加密这种加密方式不是非常保险的方法,但是能够满足一般的加密用途,可以隐蔽脚本 ...
- kvm虚拟化管理平台WebVirtMgr部署-完整记录(3)
继下面三篇文章完成了kvm虚拟化管理平台webvirtmgr环境的部署安装:kvm虚拟化管理平台WebVirtMgr部署-虚拟化环境安装-完整记录(0)kvm虚拟化管理平台WebVirtMgr部署-完 ...