Git diff 代码比较的高级技巧】的更多相关文章

Git diff 代码比较的高级技巧 作者:offbye 出处:http://blog.csdn.net/offbye/article/details/6592563 Git是使用branch来管理不同的功能点开发的,那么我们怎样能比较不同branch的不同呢? 使用 git diff  branch1 branch2 , 就可以了, 但这个方法不够直观, 因为只能显示不同点的上下几行,不方便理解. 比较好的做法是使用图形化比较工具比较,例如meld,  使用以下的命令就可以了 [html] v…
缘起 在项目中, 通常都会使用代码检测工具来规范团队的代码风格, 比如eslint.随着代码的不断增加, eslint进行代码检测的时间也越来越久.每次检测的时候, 需要检测的文件和实际检测的文件极度不对称,所以便基于git diff写了这样一个小工具. 源代码 启动脚本(lint.sh) #!/bin/bash INFO='\033[36m'; NOR='\033[0m'; ERR='\033[31m'; br='dev'; echo -e "${INFO}run lint now ... j…
我是使用一台电脑测试, 然后在本地电脑创建了两个工作目录.专门用来模拟两个人提交代码.假设a.b两个人.只使用一个master分支做测试, 没有建立其他的分支. 主要就是为了研究冲突的解决方式.感觉git pull总是强制覆盖. a修改了代码并且提交master分支. 1) 测试一: 远程master分支已改变,然后b现在也修改了代码.不过b还没有提交,直接git pull ,不能拉取代码.报错提示: error: Your local changes to the following file…
.eye-care { background-color: rgba(199, 237, 204, 1); padding: 10px } .head-box { display: flex } .text-indent { text-indent: 2em } .text-bg { } .bg { font-size: 12px; font-weight: 600; color: rgba(0, 0, 0, 1); margin-bottom: 20px } GIT 运行流程图 GIT 常规操…
1. git diff HEAD~2 获取最近两次提交的具体不同 包括增删的文件以及行数以及每行具体的改动 2.  git diff --stat 获取文件更改的个数 增加行数 删除行数 3. git diff --numstat 表格形式获取增加行数和减少行数 4. 更多可参照 https://blog.csdn.net/jiangjsf/article/details/83686749…
今天clone代码,git status显示修改了大量文件,git diff提示filemode变化,如下: diff --git a/Android.mk b/Android.mkold mode 100644new mode 100755 原来是filemode的变化,文件chmod后其文件某些位是改变了的,如果严格的比较原文件和chmod后的文件,两者是有区别的,但是源代码通常只关心文本内容,因此chmod产生的变化应该忽略,所以设置一下: 切到源码的根目录下, git config --…
在git提交环节,存在三大部分:working tree(工作区), index file(暂存区:stage), commit(分支:master) working tree:就是你所工作在的目录,每当你在代码中进行了修改,working tree的状态就改变了. index file:是索引文件,它是连接working tree和commit的桥梁,每当我们使用git-add命令来登记后,index file的内容就改变了,此时index file就和working tree同步了. com…
  Git diff 用于比较两次修改的差异 1.1 比较工作区与暂存区 git diff  比较的是单个仓库的工作区与暂存区的差别,repo diff是对git diff的封装,用来分别显示各个项目工作区下的文件差异, 它也可以加入路径 git diff [<path>...],一般不加路径,表示为当前仓库 1.2 比较暂存区与最新本地版本库(本地库中最近一次commit的内容) git diff --cached  [<path>...] 1.3 比较工作区与最新本地版本库 g…
在看教程时,有的老师会将代码放到github,如果不想跟着视频一步一步来,那就直接clone整个代码,但整个看着又有点蒙,那就使用版本切换的功能了. 首先 git clone 下载下来 git log 查看提交的日志,会有如下这种: commit f60287df9e375edb1cc4fb87e565a6c0c226b676Author: xxxxx xxxxxxxxxxxxxxx 想到那个版本就 git reset --hard f60287df9e375edb1cc4fb87e565a6c…
(1)git clone 服务器用户名@服务器IP:~/Git目录/.git 功能:下载服务器端Git仓库中的文件或目录到本地当前目录. (2)对Git目录中的文件进行修改. (3)git status   功能:查看Git仓库中的文件状态. (3)git add .  ****带个点号****    功能:向本地Git仓库中添加修改文件或目录. (4)git commit -m "注释"       功能:提交修改文件或目录到本地Git仓库. (5)git pull(相当于git f…
1. Git 克隆代码 git clone git://github.com/facebook/hiphop-php.git 2. Git更新分支 查看服务器上的所有分支 [huzg@slave3 hiphop-php]git branch –r 输出结果: origin/HEAD -> origin/master origin/HPHP-2.0 origin/a832f349d8caf0de8c7df671d03c90a5e078fb53 origin/master 查看当前有效分支: [hu…
1. 本地工作目录与远程仓库对比(所有改动过的文件) git diff HEAD  (HEAD指向最新一次的提交,即最新版本) 2. 之对比给定的文件 git diff -- filename //是查看working tree与index file的差别的. 3. 与历史提交对比 git diff commit -ascidfjutt2389292929921 4. 是查看index file与commit的差别的. git diff --cached working tree:就是你所工作在…
Jerry 工作在wchar_support分支.他改变了名称的功能和测试后,他提交他的变化. [jerry@CentOS src]$ git branch master * wchar_support [jerry@CentOS src]$ git diff 上面的命令产生以下结果 diff --git a/src/string_operations.c b/src/string_operations.c index 8fb4b00..01ff4e0 100644 --- a/src/stri…
一.首先需要下载git 查看电脑是否安装git,打开终端,输入git,回车如果输出如下,则代表已安装了git 如果未安装,则会输出: 按照提示输入:sudo apt-get install git即可安装!!或者到此处下载:git下载, pkg包下载完成,双击安装. 输入命令:git --version 可查看当前git版本 二.安装后需要一些配置  配置用户名和邮箱: $ git config --global user.name "Your Name" $ git config -…
非教程,只是自己的一个简单笔记.建议没有入门的朋友,直接看git的官方help文档: https://help.github.com/articles/set-up-git 1.注册一个git账号,超级简单. 2.直接在页面上,创建一个仓库(repo) 3.根据https://help.github.com/articles/set-up-git的提示,安装一个客户端软件.然后安装.登录. 4.如果是用公司的代理上网,设置代理的方式如下: 打开Git Shell命令行 依次输入 git conf…
在window下已经安装了git的环境 1.建立本地仓库 mkdir   test     #建立test目录 cd   test        #进入目录 git  init           #创建好了本地git仓库,会发现在test目录中多了一个.git目录,并且这个目录是隐藏的 示例: $ git init Initialized empty Git repository in F:/git-repo/test/.git/ init前 init后 2.提交文件到中转站和仓库(add和c…
原文来自:http://conw.net/archives/18/ (我自己的博客,点击链接查看文章最新版本) Git是目前最流行的版本控制系统,这里以GitHub为例,介绍git的基本使用. Git简介 如果在看这篇文章之前,你习惯把自己的代码保存在本地的话,那你就应该改变一下了.可能由于某些情况,我们会失去在本地保存的数据,那时候如果你突然想起来有很多很重要的代码还没有备份,那么此时你的内心一定是崩溃的,有了github,我们可以很方便的把代码上传到远程服务器,即使有一天你突然在另一个地方想…
git diff提示filemode发生改变(old mode 100644.new mode 10075) Posted on 2016-11-15 16:55 我是孙海龙 阅读(2292) 评论(0) 编辑 收藏 今天clone代码,git status显示修改了大量文件,git diff提示filemode变化,如下: diff --git a/Android.mk b/Android.mkold mode 100644new mode 100755 原来是filemode的变化,文件ch…
代码自动上线功能 企业部署代码上线是件比较麻烦的事情,还好我们有jenkins这个持续集成的软件可以帮助我们做很多的事情,现在我们就 来测试用jenkins推送代码上线. 我们这里测试的是一个html的web页面监控的代码上线,做一个简单的小教程,先不涉及动态语言和数据库. 准备环境 准备三台服务器 服务器名称 ip地址 需要的服务 系统 git 10.0.0.200 gitlab centos7 jenkins 10.0.0.201 jenkins centos7 web01 10.0.0.7…
git 提交代码,本地新建一个my分支,不从本地master分支直接上传,而是先从本地my分支上提交至本地master分支,然后本地master提交至远程master分支 上.前提是远程只有一个master分支.第一步:首先到工程目录下.打开git bash命令框第二步:创建本地my分支,git checkout -b my(已经存在my分支则git checkout my直接切换到my分支)第三步:将本地my的分支上的修改提交至缓存区,        git add .(提交全部修改),或者只…
IDEA下通过Git实现代码管理 1.介绍 1.1 Git概述 Git是类似于SVN等代码管理软件,使用分布式技术实现.Github是互联网代码仓库,每个人可以在上面创建自己的仓库,使用git完成同github仓库的代码同步等管理工作. IntelliJ idea->Git: 使用 Git->GitHub: 同步资源 1.2 Git逻辑架构 git架构上分为远程仓库.本地仓库和工作空间.远程仓库就是位于GitHub上的仓库,本地仓库是为用户本机的仓库目录,工作空间是用户开发所处的目录.三者关系…
git diff 等同于 git diff HEAD jiqing@ubuntu:/home/wwwroot/default/siemens/new_hotel$ git diff HEAD diff --git a/Index/Lib/Action/GetDataAction.class.php b/Index/Lib/Action/GetDataAction.class.php index 1550a57..0f79846 100644 --- a/Index/Lib/Action/GetD…
UNIX世界的软件开发大多都是协作式的,因此,Patch(补丁)是一个相当重要的东西,因为几乎所有的大型UNIX项目的普通贡献者,都是通过 Patch来提交代码的.作为最重要的开源项目之一,Linux,也是这样的.普通开发者从软件仓库clone下代码,然后写入代码,做一个Patch, 最后用E-mail发给Linux Kernel的维护者就好了.Git最初作为Linux的版本控制工具,提供了透明.完整.稳定的Patch功能. 我们先介绍一下Patch是什么.如果一个软件有了新版本,我们可以完整地…
1. Git的三种状态 已提交 committed 已暂存 staged 已修改 modified 2. Git的三个区域 Git仓库 是 Git 用来保存项目的元数据和对象数据库的地方. 这是 Git 中最重要的部分,从其它计算机克隆仓库时,拷贝的就是这里的数据. 暂存区域 暂存区域是一个文件,保存了下次将提交的文件列表信息,一般在 Git 仓库目录中. 有时候也被称作`'索引'',不过一般说法还是叫暂存区域. 工作目录 工作目录是对项目的某个版本独立提取出来的内容. 这些从 Git 仓库的压…
假如我们修改viewMail.vue 文件(部分代码) 从 //根据ID获取详情 getById () { let that = this; this.viewMailModal = true; this.loading = true; post('/presidentmailinfoController/selectByPrimaryKey', {id: this.viewId, initiatorType: 3}).then(res => { that.loading = false; if…
仓库备份位置: /huawei-bak vim /huawei-bak/huawei-bak.sh #!/bin/bash#项目克隆下来后将其注释即可PROJECT="git@codehub.devcloud.huaweicloud.com:xxxx.gitgit@codehub.devcloud.huaweicloud.com:xxxx.gitgit@codehub.devcloud.huaweicloud.com:xxxx.gitgit@codehub.devcloud.huaweiclou…
前言: Pull Request的流程 1.fork 首先是找到自己想要pull request的项目, 然后点击fork按钮,此时就会在你的仓库中多出来一个仓库,格式是:自己的账户名/想要pull request的项目的名称 2.clone 通过运行命令:git clone git@github.com:当前账户名/要克隆的仓库名.git(反斜杠后面那个是新的仓库的地址),将该仓库克隆到当前的开发环境中 3.branch 1.确定分支 通过在终端运行命令:git branch -a 查看当前所…
有一个 lab1 一个lab2 lab2 是比lab1 新的版本 但是Lab1 中有一些写的新代码,想要保留到lab2 中 直接使用patch 会把 lab2 回退到lab1 或lab1 更新到lab2 中 最后使用了命令 git diff --relative=labcodes/lab1 | patch -d labcodes/lab2 -p1 解决了问题…
1:GTI介绍及使用 环境搭建: 服务器 IP地址 主机名 角色 Centos7.5 192.168.200.113 gitserver GIT服务器 Centos7.5 192.168.200.114 gitclient GIT客户端 安装GIT: 初始化环境:关闭防火墙 两台都本次执行操作 [root@ansible ~]# hostname gitserver[root@ansible ~]# bash[root@gitserver ~]# systemctl stop firewalld…
如果把互联网上的纷繁代码比作一片海洋,那么git就是在这片海洋上航行的船只,正所谓“水可载舟,亦可覆舟”,git使用恰当可以远征星辰,不然可能会坠入无穷无尽的代码海洋无法自拔.书回正传,我们的征途是星辰大海! 扬帆起航 git的下载安装暂且不表,可参考网站https://git-scm.com/downloads. git的安装只是个入门条件,下面如何使用git命令控制代码才是远征的基础.那么从何开始呢?让我们一步步说起. 要想扬帆起航,首先得有艘帆船吧.我们要在本地建立一个项目,之后将本地项目…