“版本控制系统”( Version Control System, vcs)是程序代码管理软件的通称,是用来保存程序文件的修改记录以及历史版本,以便日后查看或是使用。Vcs已经有数十年的发展历史,最早期的系统是采用集中管理和控制的方式。如果要修改某一个 程序文件,必须先将它锁定,然后取出修改。在完成修改和回传之前,其他人都不能更改这个程序文件。
这种方式可以有效避免“冲突”( confict)的发生(也就是防止不同人同时修改同一段程序代码所造成混淆的情况) ,但是付出的代价,是效率降低。因为如果想要修改的文件正好有别人正在修改,就必须等程序文件回传之后才能动手。如果要修改的入很多,因为互相等待所造成的时间浪费将非常可观。为了解决这个问题,新的VCs改成采用分布式的方法。每一个入随时都可以获取任何一个程序文件来进行修改,等到送回vcs的时候,再根据需要进行“合并”( merge),Git 就是采用这种分布式技术的系统。
因此,我在参考完全学会Git GitHub Git Server技术栈的基础上,结合自身的实战经验,也结合国内外一线互联网公司的开源实践,综合提出更贴近国内技术文化特色的轻量级微服务参考技术栈,整理了一套Git实战文档,讲解很透彻。今天分享给大家。
看完这份文档你将获得哪些收获?
文档内容目录
第一部分Git的基本概念和操作
第二部分建立分支、合并和解决冲突
第三部分Git程序的图形操作介面
第四部分远程Git文档库和团队开关模式
第五部分架设Git Server
Git的基本概念和操作
1. Git可以管理任何一个文件夹中的文件和的文件夹,只要在该文件夹中执行"git init",就可以让Git完成管理前的准备工作。Git会在这个文件夹创建所谓的repository(我们把它称为“文档库”),里面存储被管理的文件和文件夹内容,包括所有曾经被加入的历史版本。
2. “文档库"其实是名称叫作“.git" 的的文件夹,默认它会被隐藏起来,我们可以改变文件夹的查看选项,让隐藏的文件和文件夹也能够正常显示。.
3. Git可以正确处理中文名称的文件和文件夹,只是Git Bash程序在显示中文的时候会出现乱码,后续我们会介绍gitk图形查看模式,它可以正确显示中文。
4. 单独执行"git" 指令会显示辅助说明:执行“git help-a"则显示完整的指令列表:执行"git指令- help" (例如” git init- help" )则会显示该指令的网页说明文件。
5.如果指令太长,想要换到下一行继续输入,可以用反斜杠字符"\"结尾,然后按下Enter键,继续输入。
Git( 有三个不同级别的配置文件,它们有不同的优先权,高优先权文件的设置项会覆盖低优先权文件中相同的设置项。以下按照优先权从高至低按序介绍:
建立分支合并和解决冲突
在大多数的情况下,程序项目的分支都会被合并到主要分支。除非决定将该分支独立出来,成为另一个程序项目。合并程序项目的分支需要使用“ git merge"指令.
学会使用Git指令和操作方法之后,在这个单元我们要介绍如何在开发程序项目的过程中,导入Git管理机制。首先要介绍的是使用Git的策略,接着再用一个实际的程序项目来示范。
Git程序的图形操作介面
到当前为止,我们一直都是使用Git Bash程序来学习Git的用法。Git Bash程序是以输入指令的方式操作Git 文档库。与图形操作界面的程序相比,这种命令行模式的程序好像比较麻烦。其实不然,Git Bash程序才是能够完整发挥Git最大功能的操作工具。初学者应该从GitBash程序开始学习,才能打下扎实的Git指令基础,并且完整了解Git文档库的工作原理。
TortoiscGit同样是一个图形操作界面的Git程序,而且知名度在同类型的程序中算是数一数二的。它是一个开放源码的程序项目,因此完全免费使用。使用百度或者Google搜索TortoiseGit, 就可以找到它的官方网址。它提供了32位和64位的版本,必须按照计算机安装的Windows版本,下载合适的安装文件。下载之后,执行安装文件,然后按照屏幕画面的说明操作,就可以顺利完成安装。
远程Git文档库和团队开关模式
截至当前为止,我们操作的Git文档库都是存储在程序项目的文件夹内(也就是“.git"子文件夹内)。随着程序项目的进展,我们会把不同阶段的文件内容加入Git 文档库。这个Git 文档库是由我们直接操控,称它为“本地Git文档库( local repository) ”。除了“本地Git文档库”以外,如果需要和其他人共同开发这个程序项目,还需要一个所谓的“ 远程Git文档库( remote repository)”。这个单元我们就来介绍“远程Git文档库”的功能和用法。
Bitbucket网站已经比GitHub大方得多,让我们可以免费创建私有的Git文档库。但是GitLab网站又更进-步,其他网站要收费的项目,GitLab完全免费提供。不仅如此,它还把整个系统的程序代码公开,让大家可以在自己的计算机上安装,创建完全私有的GitLab网站。这个单元我们就来介绍GitLab网站的用法,以及如何在自己的计算机上创建一个GitLab 网站。
架设Git Server
这个单元先介绍两种访问远程Git文档库最简单的做法。这两种方法都不需要安装任何其他软件。第一种是使用Windows操作系统本身的网络“共享文件夹"功能;第二种是使用Git内建的daemon功能。
绝大部分的公司都不想把自己辛苦开发的程序项目,存储在公司以外的地方。尤其对于高科技公司来说,软件是最重要的财产之一,应该受到严密的保护。因此,为了存储这些重要的知识产权,需要在公司内部创建一个私有的Git Server,并且严格管制访问权限,以避免发生被窃取的情况。这个单元我们要介绍如何架设可以通过HTTP以及HTTPS访问的Git Server,并且加入账号和密码的保护机制。
由于篇幅限制,小编这里只将此实战文档的所含内容全部展现出来了,需要获取完整文档用以学习的朋友们可以关注一下小编,后台私信:【git】获取免费领取方式!
如果对您有用,希望能得到您的转发,感谢您的大力支持!还有GitHub上的项目源码分享