大家好,感谢邀请,今天来为大家分享一下git服务器有什么用的问题,以及和什么是的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!
一、什么是***git***服务器
1、git是一种分布式的版本管理系统,Linux的创造者Linus写的。
2、GitHub是基于git的代码库托管站,也算是程序员的SMS(以码会友),其中一个主要的开源代码发布或托管站
3、git的作用就是对文件进行版本管理,方便在不同版本进行切换修改,类似文件分不同时间备份让后需要时找回其中一份代替,不过更方便使用。
4、GitHub某种程度上就是代码的网盘,也有开源开发商作为代码发布、存放、征集Bug和意见用。
5、git的特点:
1)就是云的概念,代码可以存在云端git的网站上,就像我们在各种设备间都能浏览到自己存储的网盘文件一样,我们在各个设备间都能访问到自己的代码。
2)它的社交属*。因为代码是开源的,每个人都可以浏览别人的项目并提出意见,而且它像微*一样,你能粉别人,也能被别人粉。如果你是大牛,如果你或者你的项目够有趣,你就会有很多粉丝,你的项目也会被更多的人star。
3)它能给团队合作带来很大帮助。现在有些公司就是用github来开发项目的。github允许多人多分支的工作,并且标示别人的修改和备注,最后还能合并。
二、什么是git服务器
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。
Git是 Linus Torvalds为了帮助管理 Linux内核开发而开发的一个开放源码的版本控制软件。
Git的主要功能:
1、查看邮件或者通过其它方式查看一般开发者的提交状态。
2、打上补丁,解决冲突(可以自己解决,也可以要求开发者之间解决以后再重新提交,如果是开源项目,还要决定哪些补丁有用,哪些不用)。
3、向公共服务器提交结果,然后通知所有开发人员。
扩展资料:
Git的优缺点:
优点:
1、适合分布式开发,强调个体。
2、公共服务器压力和数据量都不会太大。
3、速度快、灵活。
4、任意两个开发者之间可以很容易的解决冲突。
5、离线工作。
缺点:
1、资料少(起码中文资料很少)。
2、学习周期相对而言比较长。
3、不符合常规思维。
4、代码保密*差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。
参考资料来源:百度百科-Git
三、来讲讲Git这个玩意到底该怎么用
目前最火的版本控制软件就是Git了吧?你要是还用SVN或者CVS什么的都不好意思在圈里打招呼!前天我就遇到这种情况了,QQ上和老同学聊起自己用SVN来管理程序版本,好麻烦,当场就惨遭鄙视---“你还用SVN啊?你Out了!我们都用Git了!”好吧为了不被人鄙视,也为了可以鄙视别人,我终于也开始学Git了!
用了几天之后的感觉就是,确实好用啊!难道大家都来追捧!linus继linux之后又造福了人类一把!就是这个东西因为模式和之前的版本控制软件略有不同,所以入门上稍许有点难度,好吧不废话了,讲讲自己的心得体会吧!
首先不得不讲一下,需要分清git和github这是两个不同的东西,类似于linux和redhat,前者是开源的项目,后者则是利用这个开源的项目提供服务的服务商。github是一个使用git来托管代码的网站,有两种托管方式,一种是公开的,任何人都可以和上传代码,另一种是私人的只有建立者制定的人才可以或上传代码,私人的只有交钱才能用。
国内类似github的服务现在也冒出来不少,我用的是git@OSC,这个的好处是无论哪种代码都是免费的,当然以后会怎样就不清楚了,目前使用中发现github的速度明显不如git@OSC,看来前者还是不接地气啊。
因为这两个比较有代表*,后面我的使用基本就以这两个为例了。
操作系统自然是windows,用linux开发的都是大牛也用不着我来教,我的是win7,但winxp应该区别不大。
首先,你应该在你的电脑上安装msysgit和tortoisegit,前者是git的windows版,有了他就可以在你的电脑上创建工程,克隆工程什么的,后者则是大名鼎鼎的小乌龟,一个图形化的Git操作程序,用过tortoiseSVN的应该不会陌生,理论上只有前者也是完全可以使用git的,不过面对那*的字符界面能受的了没几个吧。
这两个软件都很好安装就不多说了,假设你已经装完了,我的msysgit是1.8.4,tortoisegit是1.8.6,如果你们用的是其他版本的差别应该也不大。tortoisegit的早期版本应该在用户设置上略有不同。
第一部分.在本地使用git(类似SVN之中自己的电脑就是服务器)
首先,讲讲怎么在自己的电脑上创建和使用git库,没错,你可以将比较安全的磁盘当做之前SVN的服务器,把库(git叫repository)放在这里,然后把另一个磁盘当做工作区。
第一步,创建repository:
先进到那个你要当库的磁盘目录下,点鼠标右键,会出现这样一个东西:
其中关于git的有五项,前两项Git GUI Here和Git Bash Here不要理会,就是调用那两个程序而已。Git Clone和TortoiseGit我们后面再说,既然是创建repository那就选择Git Create repository here吧,这时又会出现这么个东西:
简单的说把Make it Bare勾上就表示这是一个单纯的repository,写代码的工作区放在另一个地方,我们既然是要创建一个库自然是要勾上了,然后点ok,会在目录下面出现很多稀奇古怪的文件和目录,不要在意,那都是git需要的东西。
这样一个库就完成了。
第二步,创建工作区:
我们转到要做工作区的那个磁盘的目录下,然后右键选择Git Clone,出现的是这样一个东西:
URL选择之前我们创建的库的目录,directory选择工作区,也就是你要放代码的目录。其他的不用管,ok之后会出现一个.git目录,说明我们建立工作区成功了。
第三步 Add和Commit、push文件
我们在工作区的目录创建一个文件吧,比如test.c
右键这个文件,选TortoiseGit:
Add就是把这个文件加入到TortoiseGit的关注列表之中,不进行这一步的话,这个文件哪怕你改出花来,小乌龟也是不会管的,而你Add之后,小乌龟就会随时关注这个文件是否修改。
在目录的空白处右键选择TortoiseGit,也可以批量Add文件,总之玩法很多大家可以自行研究。
选择Add之后会出现一个框,ok就可以,然后会出现这样一个框表示Add成功,先别急着点ok,我们还要mit呢:
同时test.c的图标也变了,出来个加号,表示这个文件add成功了。
这里我们要花时间讲一下,git下文件的几种状态:
1.就是没有Add的文件,这种文件在工作区的目录下就是普通的文件,小乌龟不关注他。
2.就是Add成功的文件,用加号表示,但这个文件其实并没有保存到git的系统里,无论你怎样修改,也只是在工作区的目录下改变,git的系统里不会有这个文件的记录。
3.是mit的文件,这个文件会保存在工作区下的.git目录里(应该是吧)也就是你的本地的git系统里面,git会比较你mit前后是否修改,如果有修改会用红叉表示,否则就是一个绿色的对号。
4.是push到repository之中的文件,repository可以是你本机建立的,也可以是类似github和git@OSC这样的服务器。
好吧我们现在只是add了,这肯定不行,必须要mit才算是利用了git啊,于是我们在刚刚那个对话框mit,这时候会要你输入一些提示,不写任何东西是无法选择ok的,好吧我们写上0.1表示这个版本,于是小乌龟允许你点ok了:
mit之后就是这样子了,这时候我们可以继续push也可以点ok关闭,以后再push:
mit成功之后文件是这个样子滴:
push的操作和mit很类似,因为我们这个repository是建立在本机的另一个磁盘下的,所以push的过程之中不需要输入密码什么的,搞定,没什么可讲的。
只需要注意mit的文件是保存在工作区的目录的,而push成功的文件是保存在repository里的。
第二部分如何利用GitHub和Git@OSC
首先,需要你有GitHub和Git@OSC的账户。创建账户的过程不多说。
然后在自己的账户下创建Repository,过程当然也是在网页上点几下,填点文字就行了,至于license和readme.md之类的东西,默认放着就好。这个创建repository的过程其实就是之前我们右键选择create repository的过程,只不过之前我们是在本机上创建,而这里是在服务器上而已,本质没啥区别。
至于项目的类型,我们先讲public,之后有时间的话我再讲private(话说github的private是要收钱的,所以我也没试过)。
创建了之后那就是和上传自己的代码文件了。
这就和第一部分的过程很类似了,我们进到作为工作区的目录下面,右键选择git clone:
会出现这么个东西,和之前的很类似:
区别就是这里的url我们不能像第一部分那样填写本机的目录了,而是要填写github或者Git@OSC提供给你的url,github是在每个项目的右下角这里获取:
git@OSC则是项目主页的正中间:
复制,然后粘贴到小乌龟的那个文本框里就可以,然后ok,因为我们说的是public项目,所以没有密码之类的问题,很顺利的就会clone成功。
然后我们新建一个文件,add,mit的过程都和第一部分完全相同,注意mit之后的文件也依然保存在本地,接下来我们要做的就是把mit的文件push到服务器上,操作方式是在工作区的目录空白处右键-》tortoiseGit-》push:
因为是push到服务器上,所以会出现这样的对话框,填写自己的账户密码即可:
之后去github和git@osc上自己的项目主页上看看吧,你的文件已经push到服务器上了!
github和git@osc使用起来基本上很简单,网上有些文章写的是需要puttygen生成公钥私钥之类的,其实完全用不着,作为public项目简单的用户密码方式就可以了。那种方式以后我有时间再写个第三部分吧。
四、git有什么作用
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。
Git是 Linus Torvalds为了帮助管理 Linux内核开发而开发的一个开放源码的版本控制软件。
Git的功能特*:
从一般开发者的角度来看,git有以下功能:
1、从服务器上克隆数据库(包括代码和版本信息)到单机上。
2、在自己的机器上创建分支,修改代码。
3、在单机上自己创建的分支上提交代码。
4、在单机上合并分支。
5、新建一个分支,把服务器上最新版的代码fetch下来,然后跟自己的主分支合并。
6、生成补丁(patch),把补丁发送给主开发者。
7、看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突(他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。
8、一般开发者之间解决冲突的方法,开发者之间可以使用pull命令解决冲突,解决完冲突之后再向主开发者提交补丁。