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的转换和引用 博主的 ...
随机推荐
- Promise使用时应注意的问题
最近在使用axios库时遇到了个问题,后端接口报了500错误,但前端并未捕获到.1. 调用接口的业务代码如下: // 业务代码调用 axios({ url: url, method: 'post', ...
- HNOI2014做题笔记
HNOI2014 世界树(虚树.倍增) \(\sum M \leq 3 \times 10^5\)虚树没得跑 对于所有重要点和它们的\(LCA\)建立虚树,然后计算出每一个虚树上的点被哪个重要点控制. ...
- linux环境下nc命令的应用
一.安装 下载 http://vault.centos.org/6.6/os/x86_64/Packages/nc-1.84-22.el6.x86_64.rpm rpm -iUv nc-1.84-22 ...
- 微信小程序之wx.request:fail错误,真机预览请求无效问题解决,安卓,ios网络预览异常
新版开发者工具增加了https检查功能:可使用此功能直接检查排查ssl协议版本问题: 可能原因:0:后台域名没有配置0.1:域名不支持https1:没有重启工具:2:域名没有备案,或是备案后不足24小 ...
- bash:express:command not found
重新设置了node_global和node_cache目录后,总是显示command not found 找了几篇博文后,终于解决了这个问题 步骤如下: 1.新建node_global和node_ ...
- Linux文件下载(转)
wget是Linux最常用的下载命令, 一般的使用方法是: wget + 空格 + 要下载文件的url路径 例如: # wget http://www.linuxsense.org/xxxx/xxx. ...
- 索引节点(inode)爆满问题处理
关于磁盘空间中索引节点爆满的问题还是挺多的,借此跟大家分享几个情况: 情况一 在公司一台配置较低的Linux服务器(内存.硬盘比较小)的/data分区内创建文件时,系统提示磁盘空间不足,用df -h命 ...
- Python-dict-12
字典 Why:咱们目前已经学习到的容器型数据类型只有list,那么list够用?他有什么缺点呢? 1. 列表可以存储大量的数据类型,但是如果数据量大的话,他的查询速度比较慢. 2. 列表只能按照顺序存 ...
- Bing词典分析
0x01 Bug测试结果 本次测试的是Bing词典wp版本V4.5.2,经过测试,共发现如下Bug. 1.更新后,旧版本首页的每日单词与文章推荐不能重新获得,部分搜索历史记录丢失. 2.在单词挑战模式 ...
- 20135327郭皓--Linux内核分析第八周 进程的切换和系统的一般执行过程
第八周 进程的切换和系统的一般执行过程 一.进程切换的关键代码switch_to分析 1.进程调度与进程调度的时机分析 不同类型的进程有不同的调度需求 第一种分类: I/O-bound:频繁进行I/O ...