多个组织用户git commit时如何区分邮箱提交

简介

作为一个码农通常会拥有github,公司的gitlab/gerrit或个人搭建的gitlab等两个及两个账号。公司提交代码时,通常是用公司的邮箱和用户名提交代码。而像github这种我们又希望用个人邮箱和昵称来提交。当然你可以为每个项目单独本地配置user.emailuser.name信息。但组织的git仓库越来越多时,这种方式就显得繁琐多了。下面主要就是讲解如何为一个组织全局配置一个单独的用户信息。

环境

  • git (version >= 2.13.0)

ps. 2.13.0版本起支持includeIf
Continue reading

java调用系统命令Demo

java调用系统命令范例

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;

public class SystemCommandCall {
    public static void main(String[] args) throws Exception {
        String cmd = "ping 8.8.8.8"; //运行的命令

        Runtime runtime = Runtime.getRuntime();

        Process p = runtime.exec(cmd);

        InputStream is = p.getInputStream();
        InputStreamReader isr = new InputStreamReader(is, "UTF-8");
        BufferedReader reader = new BufferedReader(isr);

        for (String line; (line = reader.readLine()) != null;) {
            System.out.println(line);
        }
    }
}

git比较多个文件在两个分支下的差异

简介

一般工作中,我们每次代码测试通过后,代码需要合并到master分支,并将master分支的代码发布到线上。在合并回master过程,如果涉及到多团队并行开发时,可能会遇到代码合并冲突。在修复冲突过程中,可能将别人的代码误删或自己的代码被别人误删。这时我们如何快速判断,master分支上包含了本次开发功能的所有代码?本文主要介绍如何通过管道命令,快速地找出本次需求中开发过的文件在master分支和测试环境分支下的代码差异。

示例

git log

从上图可知,从master拉取新分支名为test,且该分支上有两个提交。
Continue reading