版本控制系统

版本控制 - Git

依然范特西╮ 提交于 2020-01-31 18:55:43
Git的使用 Git的历史:Linux 开源社区(特别是 Linux的缔造者 Linus Torvalds )需要使用一种进行版本控制的软件而进行开发的Git Git 和 Svn的使用区别: Svn:是一种集中式的版本控制系统,版本库是集中放置在中央服务器的,在需要使用的时候需要先进行版本的更新(Update)这样集中式的控制系统需要在联网的环境下进行工作,这样的方式使用的是局域网的形式或者是网络的带宽比较高的时候,比较方便,但是网速较慢的情况下就非常的郁闷。另一点缺点就是,集中式的版本控制工具存在着服务器单点故障和容错性查的缺点。 GIt:GIt是一种分布式的版本控制系统,这样的话就是没有中央的服务器的,每个使用Git的电脑就是一个完整的版本库,这样的话就不需要使用联网的环境,而进行多人协作的形式,只需要将各自的文件推送给对方,进行修改就行;或者使用远程仓库进行统一的管理。 GIt使用的流程: 使用的步骤: 从远程仓库中克隆 Git 资源作为本地仓库。(clone) 从本地仓库中checkout代码然后进行代码修改(checkout) 在提交前先将代码提交到暂存区。(add) 提交修改。提交到本地仓库。本地仓库中保存修改的各个历史版本(commit) 在修改完成后,需要和团队成员共享代码时,可以将代码push到远程仓库(push) GIt的安装: GIt工具的安装步骤:

git的使用

风格不统一 提交于 2020-01-31 13:37:35
一、前言 作为一个软件开发人员,不可能不知道Git。Git作为一个复杂的版本控制系统,命令之多,即使经常使用,一些命令也记不住,一般只记住几个常用的命令,不是所有使用Git命令行都是高效的。本教程不讲Git命令,而是先让你用上git,再去学习git。本教程应该称作TortoiseGit入门指南。因为下面要借助一个图形化的软件,TortoiseGit来操作git。用GUI(图形界面)再谈CLI(命令行),我相信这会更容易让人接受。 二、关于版本控制 什么是版本控制?我为什么要关心它呢? 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。 我们仅对保存着软件源代码的文本文件作版本控制管理,但实际上,你可以对任何类型的文件进行版本控制。 而且还可以查看历史版本、文件谁进行提交修改删除的、也就是你对文件的一举一动都在公司的控制范围内 我见过有的优秀的互联网公司,他们所有的员工都会使用版本管理系统(svn\git),他们所有的文档、文件、资料都可以在上面找到 最关键的是他还具有权限的说法,你具有对应的权限才能进行对应的操作 三、Git的简介 3.1 Git的介绍 我们在公司进行研发的时候,对公司来说我们程序员写的代码是最宝贵的财富 那么我们研发的时候如果电脑突然一些事件,导致代码丢失就造成了大量的损失 所以自然而然就出现文件的版本关系管理工具

.gitignore详解

陌路散爱 提交于 2020-01-31 06:16:57
今天讲讲Git中非常重要的一个文件——.gitignore。 首先要强调一点,这个文件的完整文件名就是“.gitignore”,注意最前面有个“.”。这样没有扩展名的文件在Windows下不太好创建,这里给出win7的创建方法: 创建一个文件,文件名为:“.gitignore.”,注意前后都有一个点。保存之后系统会自动重命名为“.gitignore”。 一般来说每个Git项目中都需要一个“.gitignore”文件,这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中。 实际项目中,很多文件都是不需要版本管理的,比如Python的.pyc文件和一些包含密码的配置文件等等。 这个文件的内容是一些规则,Git会根据这些规则来判断是否将文件添加到版本控制中。 下面我们看看常用的规则: /mtk/ 过滤整个文件夹 *.zip 过滤所有.zip文件 /mtk/do.c 过滤某个具体文件 很简单吧,被过滤掉的文件就不会出现在你的GitHub库中了,当然本地库中还有,只是push的时候不会上传。 需要注意的是,gitignore还可以指定要将哪些文件添加到版本管理中: !*.zip !/mtk/one.txt 唯一的区别就是规则开头多了一个感叹号,Git会将满足这类规则的文件添加到版本管理中。 为什么要有两种规则呢?想象一个场景:我们只需要管理/mtk/目录中的one.txt文件

git的使用 (一)

醉酒当歌 提交于 2020-01-31 06:05:37
1.版本控制 版本控制(Version Control Systems)是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。这个系统可以自动帮我们备份文件的每一次更改,并且可以非常方便的恢复到任意的备份(版本)状态。实现版本控制的软件有很多种类,大致可以分为本地版本控制系统、集中式版本控制系统(SVN)、分布式版本控制系统(git)。 2.git的安装 Window 安装 http://git-scm.com/download/win 下载Git客户端软件,和普通软件安装方式一样。 Linux 安装 CentOS发行版:sudo yum install git Ubuntu发行版:sudo apt-get install git Mac 安装 打开Terminal直接输入git命令,会自动提示,按提示引导安装即可。 3.git的原理 为了更好的学习Git,我们们必须了解Git管理我们文件的3种状态,分别是已提交(committed)、已修改(modified)和已暂存(staged),由此引入 Git 项目的三个工作区域的概念:Git 仓库、工作目录以及暂存区域。 Git仓库目录是Git用来保存项目的元数据和对象数据库的地方。 这是Git 中最重要的部分,从其它计算机克隆仓库时,拷贝的就是这里的数据。 工作目录是对项目的某个版本独立提取出来的内容

git安装

扶醉桌前 提交于 2020-01-30 23:19:26
最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上运行。后来,慢慢地有人把它移植到了Windows上。现在,Git可以在Linux、Unix、Mac和Windows这几大平台上正常运行了。 要使用Git,第一步当然是安装Git了。 在Linux上安装Git 首先,你可以试着输入 git ,看看系统有没有安装Git: $ git The program 'git' is currently not installed. You can install it by typing: sudo apt-get install git 像上面的命令,有很多Linux会友好地告诉你Git没有安装,还会告诉你如何安装Git。 如果你碰巧用Debian或Ubuntu Linux,通过一条 sudo apt-get install git 就可以直接完成Git的安装,非常简单。 老一点的Debian或Ubuntu Linux,要把命令改为 sudo apt-get install git-core ,因为以前有个软件也叫GIT(GNU Interactive Tools),结果Git就只能叫 git-core 了。由于Git名气实在太大,后来就把GNU Interactive Tools改成 gnuit , git-core 正式改为 git 。

svn客户端的使用

懵懂的女人 提交于 2020-01-30 06:29:17
1 SVN概述 SVN客户端应用集成在右键菜单中; svn服务器有2种运行方式:独立服务器和借助apache运行。两种方式各有利弊,用户可以自行选择; SVN是 Subversion 的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。 2 SVN chexkout 输入服务器地址,将SVN服务器上的仓库检出到本地 3 SVN增加/提交add 有多个文件要交到服务器,可执行“SVN增加”操作,先将文件加到“加入列表/变更列表”;再点击“SVN提交”选择列表中文件一次性提交,要填写提交信息。 4 SVN修改commit 若对仓库中文件修改,文件图标会有“红色感叹号”,提交更新后变“绿色勾”。 5 SVN删除delete 删除文件,将删除操作提交到服务器。 6 SVN仓库浏览Repo Broswer 在仓库中右键选仓库浏览,即可看到仓库中的全部内容,可管理文件 7 SVN比较差异Check for modifications 查看文件修改前后的不同,列出每一条修改记录,双击可看到修改的每一行详情 当他人提交了哪些文件的改动,也可通过此项来进行查询。 8 SVN显示日志show log

git分布式版本控制系统

和自甴很熟 提交于 2020-01-30 01:44:54
特点 分布式版本控制(成员的计算机上都有完整的版本库) 多人协调工作(强大的分支能力) 有效监听谁做的修改(提交、合并是添加信息) 本地及远程操作(个人计算机和公共服务器) 使用前的设置 git --version                // 查看当前git版本 git config --global user.name ‘your name’    // 全局设置自己的名字 git config --global user.email ‘email’     // 全局设置自己的邮箱名字 ssh-keygen -t rsa -C " your email "      // 创建SSK Key 常用命令 创建新的本地储存库 git init // 创建新的本地存储库   添加 git add <file>   // 添加文件 git add .     // 添加所有文件   提交 git commit -m ‘notes’   // 提交并添加注释   撤销 git checkout -- <file>     // 拉取暂存区的文件替换工作区的文件 git reset HEAD <file>      // 拉取版本库的文件替换暂存区的文件 git reset -- hard commit_id    // 版本切换   查看 git diff <file>   //

Ubuntu server 搭建Git server

别说谁变了你拦得住时间么 提交于 2020-01-29 04:06:10
  Ubuntu server 搭建Git server,git相比svn,最主要就是分布式了,每个客户端用户的本地都是一个版本管理控制器。   Ubuntu server 版本为12.04   搭建步骤如下:    1、更新Ubuntu server   操作如下:   $ apt-get update   $ apt-get upgrade   如上命令更新并升级系统,防止在安装git过程中,出现部分依赖包没有安装。       2、安装openssh的server和client   其实通常情况下,Ubuntu server都默认安装了openssh。安装SSH的目的,SSH 协议用于为 Git 提供远程读写操作,是远程写操作的标准服务,ssh可用于远程登录,服务端需要安装openssh-server,客户端需要安装openssh-client。介绍ssh协议是因为gitolite以及gitosis都是基于ssh公钥认证的。   安装openssh之前,可以先查看是否安装过   $ ps -ef | grep ssh   如果没有,就继续如下安装步骤,   $ sudo apt-get install openssh-server openssh-client       3、安装git   $ sudo apt-get install git-core     安装完毕即可

版本控制介绍以及常用的版本控制工具

旧街凉风 提交于 2020-01-28 20:02:12
IT这个行业的小伙伴们分享一下个人对版本控制工具的理解: 作用一,备份用 是的,代码需要备份的,这可能是版本控制工具的一个比较弱的功能,但真的很管用。程序员每做一步功能性的更新和迭代,都需要备份一次,这是一个很好的习惯,而在版本控制工具中你不需要再复制和粘贴,产生大量的代码冗余,你只需要提交一次到服务器中就可以了, 注意,千万别写好几个功能后再一次提交,这并不是一个非常好的习惯,刚入行的程序员往往很容易范这个问题,一提交就好几个功能集中在一起提交。之前小编范过这个问题,提交的功能,有几个要留下有几个要弃用返回到之前的一个时间点,而这些功能错综复杂的交互数据,使这项工作施行起来要多复杂有多复杂。吃了这次教训后,才知道版本控制的重要性。 按功能提交代码的好处很多,一来,可以知道哪次提交的具体功能,方便测试的同学单元功能测试。二来,是业务上的需求,可以方便找回之前的代码,因为可能需求改来改去,感觉还是以前写的功能好,需要回到以前某个时间点上,你只需要找一找那次提交的状态码,一条命令就可以回到那个时间点,而这个场景在实际开发中是经常遇到的。这时的版本控制工具就类似时间机器,可以让你的代码和网站很方便地返回去。 作用二,协调开发用 这个功能算是版本控制器的主要功能,开发一般很少有像ruby语言一样,一个人做一套系统,大部分的公司的开发团队少则十几个人,多则上百。当多个人共同开发一套系统的时候

gitlab服务部署及使用

狂风中的少年 提交于 2020-01-28 09:53:27
一本正经的搞事情 改变懒惰,成就心中的自己,并非难事 博客园 首页 新随笔 联系 管理 订阅 随笔- 40 文章- 0 评论- 5 gitlab服务部署及使用 目录 一、什么是gitlib 二、实现的原理 三、Gitlab的服务构成 四、Gitlab的优点 五、安装配置gitlab 5.1. 安装依赖包 5.2. 启动postfix,并设置开机自启 5.3. 设置防火墙 5.4. 下载安装gitlab rpm包 5.5. 修改配置文件gitlab.rb 5.6. 重新加载配置文件 5.7. 查看gitlab版本 六、汉化配置 6.1.下载最新汉化包 6.2. 停止服务 6.3. 切换到gitlab汉化包所在的目录 6.4. 比较汉化标签和原标签,导出 patch 用的 diff 文件到/root下 6.5. 将10.0.2-zh.diff作为补丁更新到gitlab中 6.6. 启动gitlab并重新配置gitlab 七、设置发邮件功能 7.1. 修改配置文件 7.2. 重新加载配置并重启服务 八、测试使用 回到顶部 一、什么是gitlib   Gitlab 是一个基于Git实现的在线代码仓库托管软件,你可以用Gitlab自己搭建一个类似于Github一样的系统平台,一般搭建gitlab私服就是用在公司的内部   Gitlab 功能就是能够对代码的提交审核和问题跟踪