版本控制

C/C++ 编程有哪些值得推荐的辅助工具

左心房为你撑大大i 提交于 2019-12-02 06:00:43
程序员的编程之路不是任何人都能走过来的,其过程漫长而枯燥,因此程序员不得不借助各种工具来设计、构造、编辑程序,随着科技的不断发展与前进,很多好用的软件开发工具层出不断,下面为大家扒一扒C/C++ 编程有哪些值得推荐的工具。 软件一 文本对比工具 文本对比工具最为好用的是 Beyond Compare ,无论是想要与版本控制系统合并代码,还是仅仅想要比较两份源代码文件的差异,文件比较工具都是必不可少的,Beyond Compare支持代码文件的比较、合并,文件夹的比较、合并以及同步等操作。 软件二 编译工具 常见的编辑器有文本编辑器、网页编辑器、源程序编辑器等,其中处理文本文件的难易程度取决于你使用的软件,推荐几款重量级的编辑器,如Eclipse、NetBeans、Visual Studio。如果仅仅想要简单、快速地编辑文件,可以使用这两款中量级的编辑器:Windows平台的Notepad++、Mac平台的TextWrangler。 软件三 代码版本管理工具 通过版本控制工具,可以保留同一文件中在不同时期的版本,对图表和二进制文件都适用,尤其适合文本类型文件,主流版本控制工具可以分为两种:集中式和分布式。目前最流行的开源版本控制工具要数Subvision(SVN)、Git以及Mercurial(hg),其中Subvision是集中式版本控制工具,Git和Mercurial则是分布式。

个人源码管理:如何在本机配置自己的SVN Repository (图解)

一笑奈何 提交于 2019-12-02 05:59:32
今天在写程序时,因为一个软件误删除了一个关键的 py 源文件,导致整个项目无法运行,重新编写显然要耗费很大的人力物力,因此决定依照下文在本机搭建 SVN,特转此文,引以为戒! Repository 即源码的集中存放处,所有修改后提交的源码就是保存在这里,并在其中记录所有的修改版本,分支版本,版本合并,以及并发修改处理等。SVN最主要的功能是用于团队开发时用的,用于处理源码修改的版本控制和并发修改冲突。对于个人开发来说,虽然不存在并发修改冲突的问题,但个人源码可以使用到SVN的版本控制功能,以便找到开发过程中的版本记录。一般个人没有条件也没必要搭一个独立的服务器来做Repository,在本机的开发过程中误删代码的情况有可能会发生,所以在本机创建一个SVN Repository 还是有必要的。 具体步骤: 1、SVN安装 到官方网站 http://tortoisesvn.net/downloads.html 下载最新版本安装。 2、建立本机的 Repository 比如把源码库放在E盘,则创建文件夹E:/repository/trunk/myproject(注意,确保不能删除),然后在此文件夹上右键,选择TortoiseSVN->Create repository here。如下图: 提示创建成功 点ok,然后E:/repository/trunk

GIT分布式版本控制系统-1

一世执手 提交于 2019-12-02 05:37:56
在Linux上安装Git: 1.输入 Git ,看看系统有没有安装Git: $ git The program 'git' is currently not installed. You can install it by typing: sudo apt-get install git 如上提示Git没有安装,通过 sudo apt-get install git 就可以直接完成Git安装 在Windows上安装Git: 在windows上使用Git,可以从Git官网直接 下载安装程序 ,然后按默认选项安装即可 安装完成后,在开始菜单里找到"Git"->"Git Bash",蹦出一个类似命令行窗口的东西,就说明Git安装成功! 安装完成后,需要在命令行输入: $ git config --global user.name "Your Name" $ git config --global user.email "email@example.com" 注意 git config 命令的 --global 参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。 创建版本库 选择一个合适的地方创建一个空目录: $ mkdir directory $ cd directory $ pwd /c/Users

集中式VS分布式

。_饼干妹妹 提交于 2019-12-02 02:00:46
Linus一直痛恨的CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统,集中式和分布式版本控制系统有什么区别呢? 先说集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆。 集中式版本控制系统最大的毛病就是必须联网才能工作,如果在局域网内还好,带宽够大,速度够快,可如果在互联网上,遇到网速慢的话,可能提交一个10M的文件就需要5分钟,这还不得把人给憋死啊。 那分布式版本控制系统与集中式版本控制系统有何不同呢?首先,分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。 和集中式版本控制系统相比,分布式版本控制系统的安全性要高很多,因为每个人电脑里都有完整的版本库,某一个人的电脑坏掉了不要紧,随便从其他人那里复制一个就可以了

git从入门到精通

自闭症网瘾萝莉.ら 提交于 2019-12-02 02:00:29
1. g it 简 介 1.1 产生历史 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

Subversion 和 GIT 开发者演进

牧云@^-^@ 提交于 2019-12-02 00:51:15
##前言 在开发软件的过程中,往往是需要多个人参与,版本控制系统的协同工作的重要性不言而喻,除此之外, 版本控制软件对整个开发流程的记录对于缺陷追踪也是非常重要的。版本控制系统也是软件开发的基础设施。 笔者开始接触版本控制系统是大学的时候,最开始安装了 TortoiseSVN ,然而 TortoiseSVN 仅仅是占据了硬盘空间而没有发挥作用,很多开发者在接触新事物的时候,并不一定会有极大的热情去了解, 有的走了很多弯路后返回到了原地,只有当深入了解以后,才觉得其中异常的精彩。当我在 Windows 下编译 LLVM 的时候, Subversion 开始发挥作用,彼时,几乎所有开源的大型软件都是使用 Subversion 进行托管,当然还有部分 CVS。 GIT 远远没有目前流行。后来参加工作后,就是代码托管的工作,对 Subversion 和 Git 有了一定程度的了解, 逐渐有了自己的思考。 大多数人对版本控制系统的解读都是站在使用者的角度,而本文是站在一个代码托管的开发者立场。 ##版本控制系统见闻 版本控制系统的历史可以追溯到20世纪70年代,这是一个军方开发的 CCC (变更和配置控制)系统,名字叫做 CA Software Change Manager 随后,版本控制系统开始发展起来。 CVS 一度曾经是开源软件的第一选择,比如 GNOME、KDE、THE GIMP 和

SpringCloud之Config配置中心+BUS消息总线原理及其配置

假装没事ソ 提交于 2019-12-01 23:22:35
一、配置中心作用   在常规的开发中,每个微服务都包含代码和配置。其配置包含服务配置、各类开关和业务配置。如果系统结构中的微服务节点较少,那么常规的代码+配置的开发方式足以解决问题。当系统逐步迭代,其微服务会越来越复杂,慢慢演化成网状依赖结构,这个时候常规的代码+配置的开发方式就并不合适了,因为还要考虑整体系统的扩展性、伸缩性和耦合性等。这些问题中,配置的管理也是非常麻烦的。   如果还是以常规开发形式管理配置,则要承担反复修改编译代码、重启系统、重新打包等风险。所以,一个可以集中管理,带有版本控制的配置中心应运而生。    spring cloud config就是一个配置中心 。其采用集中式管理每个微服务的配置信息,并 使用GIT等版本仓库统一存储配置内容 ,实现版本化管理控制。微服务与配置中心使用rest方式交互来实现可扩展的配置服务。   spring cloud config配置中心解决了微服务系统的配置中心化、配置版本控制、平台独立、语言独立等问题,其特性如下: 提供服务端和客户端支持(spring cloud config server和spring cloud config client); 集中式管理分布式环境中的配置信息; 基于spring环境提供配置管理,与spring系列框架无缝结合; 可用于任何语言开发环境; 默认基于GIT仓库实现版本控制; 二

零基础程序员入门Linux系统 !如何快速恢复系统?

时光毁灭记忆、已成空白 提交于 2019-12-01 23:03:06
新手在学习Linux系统的时候,难免会遇到命令输错,或系统出错的难题。那么如何快速解决呢?本文就先给你一个后悔药,让你快速备份并恢复Linux系统。本文将以Ubuntu为例,在这之前,你需要一台服务器,你可以免费使用腾讯云开发者实验室进行试验。下面就一起来看这篇操作 教程 ,零基础程序员入门Linux系统 !如何快速恢复你的系统? 备份 当然,能够还原服务器上所做更改的最简单、最安全的方法是对重要文件执行常规例行备份。 Linux系统上有大量备份的软件。我们要研究备份工具之间的差异,找出最适合您需求的工具。更重要的是定期验证您的备份,以确保它们正常执行。 备份提供了一种非常好的方法来恢复服务器的损坏。只要复制的重要数据保存在其他服务器,它们就可以在数据损坏或删除时发挥效用。 备份包括完全备份(完全备份所有数据),差异备份(备份自上次全备份以来已更改的每个文件)和增量备份(备份自上次完全备份或差异备份以来文件中的数据更改)。 这些级别的组合通常彼此联合使用以完全备份文件,通常,您可以恢复单个文件,而无需还原整个文件系统。如果您不小心删除或修改了文件,可以用备份快速恢复。 版本控制 与备份有些类似的策略是版本控制。虽然不是备份整台计算机的理想解决方案,但如果您只想将文件恢复到以前的状态,则版本控制可能正是您所需要的。 版本控制系统,如git和mercurial,允许您跟踪文件的更改

一个小时学会Git

别说谁变了你拦得住时间么 提交于 2019-12-01 15:20:02
一个小时学会Git 目录 一、版本控制概要 工作区 暂存区 本地仓库 远程仓库 1.1、什么是版本控制 1.2、常用术语 1.3、常见的版本控制器 1.4、版本控制分类 1.4.1、本地版本控制 1.4.2、集中版本控制 1.4.3、分布式版本控制 1.5、Git与SVN最主要区别 二、Git安装与配置 2.1、什么是Git 2.2、搭建Git工作环境 2.2.1、下载Git 2.2.2、安装Git 2.2.3、启动Git 2.2.4、Linux与Mac OS安装Git 2.2.5、Bash基本操作命令 2.3、Git配置 - git config 2.3.1、查看配置 - git config -l 2.3.2、Git配置文件分类 2.3.3、设置用户名与邮箱(用户标识,必要) 2.3.4、添加或删除配置项 2.3.5、更多配置项 三、Git理论基础 3.1、工作区域 3.2、工作流程 3.3、图解教程 四、Git操作 4.1、创建工作目录与常用指令 4.2、获得GIT仓库 4.2.1、创建全新仓库 4.2.2、克隆远程仓库 4.3、GIT文件操作 4.3.1、文件4种状态 4.3.2、查看文件状态 4.3.3、添加文件与目录 4.3.4、移除文件与目录(撤销add) 4.3.5、查看文件修改后的差异 4.3.6、签出 4.3.6、忽略文件 4.3.7、提交 4.3.8