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的转换和引用 博主的 ...
随机推荐
- Codechef STREDUC Reduce string Trie、bitset、区间DP
VJ传送门 简化题意:给出一个长度为\(l\)的模板串\(s\)与若干匹配串\(p_i\),每一次你可以选择\(s\)中的一个出现在集合\(\{p_i\}\)中的子串将其消去,其左右分成的两个串拼接在 ...
- Linux下查找进程id并强制停止进程的脚本
Linux下的tomcat的停止脚本shutdown.sh经常失败,造成tomcat进程没关闭.所以只能手动查找进程id,然后用kill命令来强制停止.每次都要这样查一下,然后再杀进程.感觉有点麻烦, ...
- vue 结合mint-ui Message box的使用方法
两种方式使用: 一.全局注册 1.在main.js中引入 //引入 import { MessageBox } from 'mint-ui'; //全局使用,挂载到原型上 Vue.prototyp ...
- Codeforces 718C solution
C. Sasha and Array time limit per test : 5 seconds memory limit per test : 256 megabytes Descrip ...
- vue 中使用 async/await 将 axios 异步请求同步化处理
1. axios 常规用法: export default { name: 'Historys', data() { return { totalData: 0, tableData: [] } }, ...
- Elasticsearch5.5.1插件开发指南
Elasticsearch5.5.1插件开发指南 原文地址: https://www.elastic.co/guide/en/elasticsearch/plugins/5.5/plugin-auth ...
- Spring Boot 2.0(七):Spring Boot 如何解决项目启动时初始化资源
在我们实际工作中,总会遇到这样需求,在项目启动的时候需要做一些初始化的操作,比如初始化线程池,提前加载好加密证书等.今天就给大家介绍一个 Spring Boot 神器,专门帮助大家解决项目启动初始化资 ...
- C# 大型电商项目性能优化(一)
经过几个月的忙碌,我厂最近的电商平台项目终于上线,期间遇到的问题以及解决方案,也可以拿来和大家多做交流了. 我厂的项目大多采用C#.net,使用逐渐发展并流行起来的EF(Entity Framewor ...
- SNMP基础知识
注:本篇博客并非原创,仅是学习笔记 1. 概述1.1 诞生背景1.2 SNMP简介1.3 版本1.4 术语1.5 网络结构1.6 MIB简介2. Linux的SNMP安装 1. 概述 1.1 诞生背景 ...
- YouTube视频下载的12个软件(Win和Mac)
如今,观看视频已经成为人们生活中重要的一部分.很多时候,我们都需要用到视频,比如教育用途.会议报告.休闲娱乐以及广告宣传等.如果你觉得有时候资源不好找的话,不放去看下YouTube.YouTube是世 ...