GitDiff

设计模式

不羁的心 提交于 2020-10-16 02:13:14
单例模式 视频 参考 用例:序列号生成器、web页面计数器 通过单例模式, 可以做到: 确保一个类只有一个实例被建立 ,并且自行实例化并向整个系统提供这个实例。 提供了一个对对象的全局访问指针 在不影响单例类的客户端的情况下允许将来有多个实例 因为要保证只有一个实例,就要求该类不能被外界实例化只能类自己实例化,即构造函数要是private 代码: // 懒汉式单例模式:类加载时不实例化,而是在第一次被调用的时候才进行实例化 class Singleton { private : Singleton ( ) { } static Singleton * pInstance ; public : static Singleton * GetInstance ( ) { if ( pInstance == nullptr ) pInstance = new Singleton ( ) ; return pInstance ; } } ; // 线程安全的单例模式:饿汉式,即在类加载的时候就进行实例化 class Singleton { private : Singleton ( ) { } ~ Singleton ( ) { } Singleton ( const Singleton & ) ; Singleton & operator = ( const Singleton & ) ;

学习Git

社会主义新天地 提交于 2020-08-19 20:37:08
1.git简介 Git是目前最先进的分布式版本控制系统 版本控制系统:能够记录每次文件的改动 2.安装git 终端下输入: 代码块 brew install git 检查git是否安装成功,输入 代码块 git 出现以下界面,则表明安装成功 3.创建版本库 安装成功之后下来就是创建版本库: 初始化一个仓库: 1)在合适的地方创建一个空目录 2)切换到当前目录下 3)初始化仓库 代码块 mkdir learngit cd learngit git init 在仓库下创建新文件: 1)创建空文件夹 2)向文件夹中写入内容 代码块 touch readme.txt echo "readme">readme.txt 将文件放入Git仓库中: 1)将文件提交到暂存区 2)将文件提交到仓库 代码块 git add readme.txt git commit -m "commit file" 4.常用命令 1)查看日志: 如果觉得输出太多,可以加上 --pretty=oneline 代码块 git log 2)回退版本:git reset --hard xxx 代码块 git reset --hard HEAD^ //回退到上一个版本 git reset --hard xxx //xxx指commit id,输入git log进行查找 //如果是回退到某个版本,关掉了电脑,但是之后又后悔了

Vue工程使用git添加submodule公共库的项目实践

我只是一个虾纸丫 提交于 2020-08-16 17:52:11
Vue工程使用git添加submodule公共库的项目实践 Vue的使用,一直在路上! Git的使用,一直在路上! Git submodule的使用,开始并将一直使用!(旨在解决多工程使用公共库代码的方式,且不必每个客户端都包含该库,亦可保持公共库代码提交的独立性。) 一、 说明 假设submodule公共库的gitlab地址: ssh://git @y :8080/submodule.git,且submodule公共库已有公共代码内容,此公共库和项目工程代码提交保持一致。 添加submodule公共库均为全量添加,即增加公共库后submodule的内容会全部存在而非部分存在。 若在已有工程引入公共库,且项目工程已包含公共库内容,建议在使用公共库前将项目工程内容和公共库内容进行对比,以免更改后引入的无效或丢失项目工程内容。且建议:如非必要,尽量修改项目工程代码。 若项目工程某功能分支已有多人在开发,建议管理人员统一引入submodulle公共库后,各开发人员在clone已有submodule公共库的代码后再进行开发。(引入submodule公共库所花费时间不长) 建议submodule公共库和项目工程各分支名称尽量保持一致,且对应关系一致。 以下内容涉及到submodule公共库均简称公共库。 二、 已有项目库添加公共库(以dev分支为例) 添加公共库(温馨提示

git使用

柔情痞子 提交于 2020-08-15 10:40:50
一、git安装 1、git for windows 下载地址: https://gitforwindows.org/ 下载好安装包直接默认安装即可 2、git for contos 安装 # yum -y install git 3、查看 git 版本 # git --version 二、git使用前配置(必需) 1、配置git user 及email # git config --global user.neme "zhouzeheng" # git config --global user.email "zhouzeheng@foxmail.com" 2、git配置文件目录,/用户家目录/.gitconfig 三、创建版本库 1、创建版本库目录及进入版本库 # mkdir /root/damo && cd /root/damo 2、初始化本地版本库 # git init 四、git基本操作命令 git命令 作用 git status 查看本地版本库信息,暂存空间、本地文件的增删改 git add 把本地文件提交到暂存空间,例如:# git add . or 文件名 git commit -m "版本信息" 把文件提交到本地版本库 git mv 修改文件名 git diff 本地文件与暂存区间的区别 gti diff --cached 暂存区间与本地版本库的区别 git log

Git的4个阶段的撤销更改,必须要弄懂

若如初见. 提交于 2020-08-13 10:10:53
3个步骤 正常情况下,我们的工作就是3个步骤 git add . git commit -m 'comment' git push    说明: 1,git add . 把所有文件放入暂存区; 2,git commit 把所有文件从暂存区提交到本地仓库; 3,git push 把所有文件从本地仓库提交到远程仓库。 4个区 git之所以令人费解,主要是它相比于svn等等传统的版本管理工具,多引入了一个暂存区(Stage)的概念,就因为多了这一个概念,而使很多人疑惑。其实,在初学者来说,每个区具体怎么工作的,我们完全不需要关心,而只要知道有这么4个区就够了: 1.工作区(Working Area) 2.暂存区(Stage) 3.本地仓库(Local Repository) 4.远程仓库(Remote Repository) 5种状态 以上4个区,进入每一个区成功之后会产生一个状态,再加上最初始的一个状态,一共是5种状态。以下我们把这5种状态分别命名为: 1.未修改(Origin) 2.已修改(Modified) 3.已暂存(Staged) 4.已提交(Committed) 5.已推送(Pushed) 检查修改 了解了基本概念之后,我们来谈一谈犯错误之后如何撤销的问题。首先,我们要了解如何检查这3个步骤当中每一个步骤修改了什么,然后才好判断有没有修改成功。检查修改的二级命令都相同

如何防止'git diff'使用寻呼机?

孤人 提交于 2020-08-13 01:19:30
问题: Is there a command line switch to pass to git diff and other commands that use the less pager by default? 是否有命令行开关可以传递给 git diff 和默认情况下使用 less 分页器的其他命令? I know I can pipe it to cat, but that removes all the syntax highlighting. 我知道我可以将其通过管道传递给cat,但是这样可以删除所有语法突出显示。 I know I can set the pager in the global .gitconfig to cat by GITPAGER=cat (or something like that); 我知道我可以通过 GITPAGER=cat (或类似的东西)将全局.gitconfig中的寻呼机设置为cat。 but I want to have pager sometimes (depending on the size of the diff). 但我有时想传呼(取决于diff的大小)。 But, I would prefer a command line switch if there is one; 但是,如果有的话,我希望使用命令行开关。

Git 常用操作汇总 -cheat sheet

折月煮酒 提交于 2020-08-11 20:50:29
0. 前言 大家好,我是多选参数的程序锅,一个正在 neng 操作系统、学数据结构和算法以及 Java 的硬核菜鸡。到今天为止,关于 Git 的大坑算是给填上了。但是 Git 这个系列并不会结束,程序锅偶尔看到比较好的关于 Git 的文章也会整理一番发出来,争取在 Git 的坑上再长棵树。 1. 常用命令 1.1. git 配置 # 显示 config 的配置 加--list # 优先级:local > global > system git config --list --local # local 的范围是某个仓库 git config --list --global # global 的范围是登录的用户 git config --list --system # system 的范围是系统所有登录的用户 # 配置用户 name 和 email git config --global user.name 'your_name ' git config --global user.email 'your_email@domain.com' # 清除配置信息 git config --unset --global user.name 1.2. 仓库初始化 # 将执行该命令时所在的目录初始化为一个 git 仓库(如:进入某目录后执行该命令会将该目录初始化为一个 git 仓库) git

Git常用命令

对着背影说爱祢 提交于 2020-08-11 19:33:57
仓库 # 在当前目录新建一个Git代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project-name] # 下载一个项目和它的整个代码历史 $ git clone [url] 配置 # 显示当前的Git配置 $ git config --list # 编辑Git配置文件 $ git config -e [--global] # 设置提交代码时的用户信息 $ git config [--global] user.name "[name]" $ git config [--global] user.email "[email address]" 增加/删除文件 # 添加指定文件到暂存区 $ git add [file1] [file2] ... # 添加指定目录到暂存区,包括子目录 $ git add [dir] # 添加当前目录的所有文件到暂存区 $ git add . # 添加每个变化前,都会要求确认 # 对于同一个文件的多处变化,可以实现分次提交 $ git add -p # 删除工作区文件,并且将这次删除放入暂存区 $ git rm [file1] [file2] ... # 停止追踪指定文件,但该文件会保留在工作区 $ git rm --cached [file] # 改名文件,并且将这个改名放入暂存区 $ git mv

使用Git后10件你可能需要“反悔”的事

a 夏天 提交于 2020-08-11 19:02:48
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! Git是目前世界上最优秀最流行的分布式版本控制系统,也是程序员们日常使用最频繁的工具之一(几乎每天都需要使用它来对源代码进行版本管理)。 使用Git的过程,难免由于手快或者别的什么原因,需要对做过的事情进行“反悔”或者多次“反悔”。不用担心,Git强大到几乎任何操作都是可以“反悔”的,让我们一起来看看吧。 1. 在未暂存前,撤销本地修改 在介绍Git“反悔”操作之前,先简单提及下Git的一些基础知识。 Git项目有3个区域:工作区、暂存区和Git仓库(分成本地仓库和远程仓库)。如下图: 本地编写的代码,不执行任何Git命令,处于工作区。 执行git add命令时,会将工作区的文件标记为已暂存,保存在暂存区。 执行git commit命令时,会将标记为已暂存的文件保存都本地Git仓库,并生成一个快照。 在没有暂存之前(没有执行git add命令),我们可以通过以下命令查看本地修改: git diff 显示的格式如下图所示: 如果我们不想要这些代码本地代码(比如一些临时的测试代码),可以通过以下命令一次性撤销所有本地修改: git checkout -- . 注意:该命令不可二次“反悔”,本地操作一旦撤销,将无法通过Git找回。 撤销之后再次执行git diff命令将没有任何输出

如何显示已上演的更改?

不羁的心 提交于 2020-08-11 07:01:23
问题: I staged a few changes to be committed; 我上演了一些改变来承诺; how can I see the diff of all files which are staged for the next commit? 如何查看为下一次提交而暂存的所有文件的差异? I'm aware of git status , but I'd like to see the actual diffs - not just the names of files which are staged. 我知道 git状态 ,但我想看到实际的差异 - 而不仅仅是分阶段文件的名称。 I saw that the git-diff(1) man page says 我看到 git-diff(1) 手册页说 git diff [--options] [--] […] git diff [--options] [ - ] [...] This form is to view the changes you made relative to the index (staging area for the next commit). 此表单用于查看您对索引所做的更改(下一次提交的暂存区域)。 In other words, the differences are what