一、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的转换和引用 博主的 ...
随机推荐
-
Run Loop详解
Run loops是线程的基础架构部分.一个run loop就是一个事件处理循环,用来不停的调配工作以及处理输入事件.使用run loop的目的是使你的线程在有工作的时候工作,没有的时候休眠. Run ...
-
自定义圆形控件 RoundImageView
1.自定义圆形控件 RoundImageView package com.ronye.CustomView; import android.content.Context; import androi ...
-
获取URL的code的参数的值
1.获取URL的code的参数的值 需求说明:现在有URL为http://www.bdqn.cn/index.php?code=sdR4,请使用字符串对象的属性和方法来获取code的值,并把其指都转化 ...
-
xmpp的bug
[微分享]:事前必三思,事中要坚韧,事后莫悔恨,只有眼光看远些,脚步坚实些,人生方多些圆满,少些遗憾. xmpp的bug
-
自定义实现简单的Android颜色选择器(附带源码)
在写Android App过程中需要一个简单的颜色选择器,Android自带的ColorPicker和网上的一些ColorPicker都太高端了,都实现了颜色渐变功能,我要的不需要那么复杂,只想提供几 ...
-
《深度探索c++对象模型》chapter1关于对象对象模型
在c++中,有2种class data member:static和nostatic,以及3钟class member function:static,nostatic和virtual.已知下面这个c ...
-
关于VRTK的使用(一)—— VR开发环境搭建
首先在Hierarchy窗口中添加GameEmpty,并重命名为VRTK.然后给VRTK添加一个子容器命名为SteamVR.从Asset Store导入SteamVR Plugin: 然后分别选中预制 ...
-
自学Zabbix3.6.5-触发器item-Unit symbols单位符号
在zabbix里面,我们不需要使用大数字来,例如我们可以不使用86400来表示一天,这个数字又不容易理解也容易出错.用什么办法来解决大数字问题呢?我们可以使用单位来简化,例如简化zabbix触发器表达 ...
-
基于springboot的freemarker创建指定格式的word文档
在web或其他应用中,经常我们需要导出或者预览word文档,比较实际的例子有招聘网站上预览或者导出个人简历,使用POI导出excel会非常的方便,但是如果想导出word,由于其格式控制非常复杂,故而使 ...
-
C#的扩展方法(this)
先在StringLibrary类中定义一个静态方法,如下: public static class StringLibrary { //第一个参数指定该方法作用于哪个类型,并且该参数以 this 修饰 ...