本篇内容作为记录开发环境搭建,其中作为Git版本控制,可以看看本篇, 我尽可能的详细描述及配图,但其中所述也是个人在搭建时候的思路及理解,如有不妥之处请及时指教。
(来源网络)
很多人都知道,Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了。Linus虽然创建了Linux,但Linux的壮大是靠全世界热心的志愿者参与的,这么多人在世界各地为Linux编写代码,那Linux的代码是如何管理的呢?
事实是,在2002年以前,世界各地的志愿者把源代码文件通过diff的方式发给Linus,然后由Linus本人通过手工方式合并代码!
你也许会想,为什么Linus不把Linux代码放到版本控制系统里呢?不是有CVS、SVN这些免费的版本控制系统吗?因为Linus坚定地反对CVS和SVN,这些集中式的版本控制系统不但速度慢,而且必须联网才能使用。有一些商用的版本控制系统,虽然比CVS、SVN好用,但那是付费的,和Linux的开源精神不符。
不过,到了2002年,Linux系统已经发展了十年了,代码库之大让Linus很难继续通过手工方式管理了,社区的弟兄们也对这种方式表达了强烈不满,于是Linus选择了一个商业的版本控制系统BitKeeper,BitKeeper的东家BitMover公司出于人道主义精神,授权Linux社区免费使用这个版本控制系统。
安定团结的大好局面在2005年就被打破了,原因是Linux社区牛人聚集,不免沾染了一些梁山好汉的江湖习气。开发Samba的Andrew试图破解BitKeeper的协议(这么干的其实也不只他一个),被BitMover公司发现了(监控工作做得不错!),于是BitMover公司怒了,要收回Linux社区的免费使用权。
Linus可以向BitMover公司道个歉,保证以后严格管教弟兄们,嗯,这是不可能的。实际情况是这样的:
Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是Git!一个月之内,Linux系统的源码已经由Git管理了!牛是怎么定义的呢?大家可以体会一下。
Git迅速成为最流行的分布式版本控制系统,尤其是2008年,GitHub网站上线了,它为开源项目免费提供Git存储,无数开源项目开始迁移至GitHub,包括jQuery,PHP,Ruby等等。
历史就是这么偶然,如果不是当年BitMover公司威胁Linux社区,可能现在我们就没有免费而超级好用的Git了。
一路Next即可。其中安装路径最好自己定义。
验证是否安装成功:
1.打开IDE
打开要进行GIt版本控制的项目,这里我以一个临时建立的新项目为例。
此项目无任何版本控制关联,下面我们一起对它进行Git控制操作
2.配置GIt
进入setting > version control > Git
②:关联已安装git客户端的git.exe文件
③Test:验证路径下git文件是否安装成功,是否可用,可用则提示git客户端版本
然后右下方OK即可。
注:配置好后我们点击Version Control的时候,在右侧会提示该项目所采用的版本控制工具,如:
若发现该路径为灰色,需要选中,点击”+”
因为我们是在一个已有的项目上创建的仓库,所以配置完后需要为项目指定版本控制工具,也可以在最开始Create项目的时候直接指定仓库路径。
3.项目建立Git,本地仓库初始化
在Androidstudio的Terminal命令行里进行git init命令操作。
当前目录下会自动生成.git
隐藏文件夹,该隐藏文件夹就是git
版本库。
4.提交Git远程仓库
开题已经说了我们演示使用的是腾讯云开发者平台代码管理,Coding.net,这里注册的是个人版,大家依据个人情况抉择。
包括上传到github,码云,专门的公司Git服务器等,操作都是一样。
接下来最重要的就是SSH公钥配置,请根据官方SSH公钥说明配置
简单说一下为什么一定要配置SSH公钥,我们在项目代码控制的时候会进行频繁的新增修改删除等操作,这些权限都是在设置SSH公钥之后才赋予的。在其他GIt服务器包括GitLab图形化界面操作上也都是类似要配置权限唯一身份认证,拿到项目的Git操作权限。好了废话不多说,继续操作。
5.Coding.net建立要上传项目的仓库
进入控制台 ->新建项目
新建示意:
6.添加忽略文件
对于工具自动生成,及其他文件我们是可以无需上传到远程仓库的,毕竟每次运行项目,工具自检项目并自动生成这些文件,节流开源嘛。
有些地方就不自己截图了,以下来源网络。
手动添加忽略太麻烦 我们使用.ignore插件添加忽略 插件下载位置在 Settings > Plugins 需要重启
选中你的项目根目录 然后右键 new > .ignore file >
Android和Project两种视图 下添加忽略文件
项目中添加的忽略声明,大家参考一下就得了
7.项目提交本地仓库后,同时上传远程仓库。
得到地址后,我们继续操作Androidstudio的项目:
提交时可能会弹出一些警告信息提示框,不用管它,然后点击commit,由于现在还没有链接远程库,所以点击Define remote,将你的远程git地址添加到URL中,然后复制仓库地址,点击ok.
第一次可能需要填写密码(这个密码是第一次在androidstudio配置Git的时候设置的),点击Ok,会跳出一个登录框
这个账号密码是你远程库的登录账号和密码
登录之后就可以把你的代码push上到你的远程库。
下面介绍几个git常用命令:
在当前页面建立一个常用的代码库
$git init
查看远程仓库
$ git remote -v
删除远程仓库
$ git remote rm [name]
新建个人账户和邮箱
$git config --global user.name"you name"
$git config --global user.email"you email"
获取Git配置信息
$git config --list
1.切换分支(远程仓库未新建分支情况下)
2.切换分支(远程仓库新建了分支,当前我们需要使用到这个新建分支)
如果在远程仓库新增了一个分支,本地不存在分支。那么想要在本地操作此新增分支。
我们需要克隆一份远程仓库作为本地仓库。
为什么这样做,只是为了能够同时根据不同的需要在本地操作不同的分支,达到同期开发不同版本的目的。
做到本地与远程同步,并且依然可以在本地灵活切换管理这些分支,该怎么做呢?
注意:在每次版本提交之前,要先同步pull远程仓库代码,然后再ADD>commit>push
至此,Git关联开发项目,提交远程就到这里。
补充:--------------2020.03------------------
若无特殊的要求及特有的规范,其实最简单的方法如下:
1.在要进行的仓库建立项目,通过Git工具克隆下来一份,检查克隆的文件夹根目录是否包含.Git文件。
2.IDE直接运行本地clone下来的项目,此时基本上与远程仓库建立了联系。不过要先进行pull同步 操作
3.提交时i,会遇到验证远程的账户/密码,根据步骤操作。最快的关联方式。
其他关于Git建立分支,合并分支等自行了解。如有不合适指出,请帮忙及时指教。谢谢。