赞
踩
首发自:本然道软件:git仓库的基本使用
在软件研发的过程中,我们如何将自己的代码管理起来,其实是一个很重要的话题。这里的管理往往包含了这样几个方面:
为了解决这些问题,我们会引进一种叫做版本控制软件的东西。
主流的版本控制软件有CVS、SVN和Git。现在CVS已经基本推出江湖了,在2010年前后还可以看到它的身影,现在已经很少见了。当然了,中途也出现过一些其它的,比如微软vs studio继承的团队管理工具。不知道现在是不是还在用,由于我现在的接触面,基本上就只剩下SVN了。
还是先聊聊CVS。CVS是一个客户机-服务器架构的软件,它的使用一般需要在企业环境中,具有良好的网络环境,开发过程中会受到严格的控制。因为所有的信息都在服务器上。我记得当初使用CVS的时候,编辑文件是需要先进行锁定的。编辑完了要记得解锁,要不然别人是无法使用的。这种协作方式,在大型项目中是很不方便的。
svn现在依然是一种很流行的版本控制系统。它可以将权限授权道目录,非常方便。但是,当我们无法连接到svn服务器的时候,我们是无法提交任何代码的。而且,svn的分支管理本质上是使用了不同的目录,非常的重。在我的公司里,我们更倾向于使用svn来管理文档而不是代码。
Git的诞生是由于linux的创始人Linus想要一个新的版本控制系统用来维护linux的内核,于是他就写了这么一个版本控制系统(要么说大神就是大神呢,不过其实我们也可以)。Git带跟我们的特性主要有这样一些:
在官方网站上可以找到下载链接,下载安装即可:Git - DownloadingPackage (git-scm.com)
所有的安装选项都可以选择默认,这里我们就不逐一截图安装过程了。你需要注意的是,你要知道你的Git被安装到哪个目录下了。
这是个什么东西呢?Tortoisegit是一个Git的图形化操作软件,为Git中的指令提供图形化的操作界面。因为Git本身的交互都是通过命令行进行的,对初学者不是很友好,另外对频繁的操作也不是很方便。所以,平时我都是通过图形化操作进行的。这个东西,在Ideal中也有,不过我平时还是习惯通过Tortoisegit进行操作。这是下载地址:TortoiseGit –Windows Shell Interface to Git
安装过程也只是需要输入自己的用户名和邮箱。这是其实是给Git登记的信息。
对了,由于Tortoisegit的图标是一直小乌龟,所以也有人叫他小乌龟。另外就是,并不推荐安装中文版。因为英文版和Git的命令是可以对上的,但是中文版就不好说了。
为啥说是搞一个远程仓库呢?这个问题我们分三个方面来聊:
远程,是和本地相对的。前面我们在本地安装了Git,就可以创建本地仓库了。你在命令行里执行如下指令,即可创建一个本地仓库:
git init
因为你安装Git的时候,安装程序已经自动将你的git.exe所在的路径加入了path,所以你在命令行可以直接执行上述指令。它的结果就是把执行指令的目录初始化成为一个git仓库。这个时候你打开查看隐藏文件夹就可以看到在这个目录下面创建了一个隐藏的名字叫.git的目录。它里面存放了git仓库所有需要的东西。如果我们不希望将这个目录变成git仓库,删掉这个文件夹,一切就都恢复了。文件夹里文件将只是正常的文件而不是受git版本控制的文件。
而远程仓库,顾名思义就是不在本地的git仓库。理论上来说我们在另外一台机器上安装了Git也算。但是,由于我们对远程仓库的使用方法不同,所以我们安装的Git程序是没有办法被当做远程仓库使用的。
这里之所以用搞是因为,搞到一个可用的软件仓库有很多种途径:自己装一个,免费仓库注册一个,企业管理平台中自带的。
先说自己装吧。有很多开源免费的程序可以安装,比如GitHub、GitLab。我们在服务器上安装它们之后,就可以那他们当做远程仓库了。自己安装Git仓库的好处就是,这东西是你自己的,没有人拿得走,你想怎么玩就怎么玩。问题嘛,就是你得管它。确实,程序挺稳定的。但是,它运行的机器得一直开机嘛,所处的网络得持续可用嘛,存储数据的空间得够用嘛,真出了什么问题还是要自己上服务器去调试的。推荐高阶用户使用,一般的用户以及小型的企业用户还是在外面的平台上注册一个划算。
再说说网上的免费仓库。前面说的GitHub、GitLab,它们既是可以免费安装的开源软件,也是可以免费注册仓库的开放平台,国内的还有Gitee等。这些平台大多还富含收费项目,不过免费仓库是真的可用就是了。另外Gitee还附带一套团队管理工具,其实蛮好用的。但是吧,毕竟本质是开源平台,企业办公的支持有限,大多还是为开源团队提供支持的角度。所以,个人和开源团队建议使用,公司办公是不推荐的。
最后说说企业管理平台中自带的。按说,它其实和刚才说网上的免费仓库如出一辙,但是它有个本质的区别,就是它本质上是为企业办公服务的,仓库只是它的一个附加服务。比如,阿里云的云效
如上图所示,它几乎可以对全部的软件研发生命周期进行管理。当然了,非常重要的一点是,它还免费。所以,当我认识它以后,就放弃了自己搭建各种Git仓库、Maven私服等等的想法。当然了,肯定有坑,但是至少在代码提交这块,我没发现它有啥坑。点击“代码提交”按钮,进入代码库的管理。
点击新建代码库
如上图所示,我创建了我HelloWorld的仓库。结果如下图:
可以看到这里是有教程的。
我们按照它方法二,已有文件夹或仓库的教程进行操作。
先配置全局设置(注意,图里的是错的):
git config --global user.email "linghuanxu@qq.com"
git config --global user.name "nature"
另外,在初始化之前,在仓库的根目录放一个.gitignore文件,如下图所示:
内容如下:
# Default ignored files
.idea/
*.iml
*/target
解释一下这个文件。这是Git默认的读取忽略信息的地方。文件里每行都是一个需要Git默认忽略的内容。第一行是ideal项目信息的文件夹,第二行是ideal项目文件,第三行是maven的目标文件夹。这样我们就不用总是费心选择要哪些文件不提交哪些文件要提交了。
然后初始化仓库
cd D:\codes\nature_workspace
进入目标目录
git init
初始化Git仓库
git remote add origin https://codeup.aliyun.com/61cacd4e03ecfc3a1a252ddc/nature-tech/HelloWorld.git
配置仓库的远程仓库
git add .
这一行是添加本地内容到Git仓库中,我们是直接选中了当前目录。
git commit
这个时候会跳到一个编辑界面里。这里其实是vi。是用来编辑提交记录用的。当我们保存退出后,提交就完成了。提交的意思就是本地仓库已经保存下了这些代码。然后执行以下指令:
git push -u origin master
这行指令是将仓库推送道远程仓库origin的master分支上。但是,这个时候我们会遇到一个非常困难的问题——输入账号密码
是的,它不是你登陆阿里云的账号密码。他需要你在云效——代码管理的个人设置里去设置它。入口在右上角的头像下,然后我经历可绑定邮箱,激活邮箱,修改用户名和密码的操作,才能正常使用。
至此,我们已经完成了git仓库的创建,刚才的添加文件、提交文件、推送仓库就是Git仓库最常用的基本操作。如果一个人使用,不出意外,你只会用到这些
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。