每当我换到一个新的开发环境,蛮多东西要折腾的。比如 git、golang、环境变量等等。所以特地整理了一下,下次换新电脑也方便。

本文分享我在工作中常用的环境变量 + Shell alias:比如 git add . 这样的命令,我只需要敲 ga 就好了!

git:

不使用 rebase,要加上这个设置:

git config --global pull.rebase false

全局配置工作用户名和邮箱,不然会影响到你提交代码:

git config --global user.name  "???"
git config --global user.email "???@???.com"

合并上述配置,再加上拉代码的时候强制使用 https + 私钥 下载的配置:

[user]
name = username
email = xxx@xxx.com [pull]
rebase = false [url "https://TOKEN:xxxxxxxxx@code.xxxx.com/"]
insteadOf = http://code.xxxx.com/ [url "https://TOKEN:xxxxxxxxx@code.xxxx.com/"]
insteadOf = https://code.xxxx.com/ [url "https://TOKEN:xxxxxxxxx@code.xxxx.com/"]
insteadOf = git@code.xxxx.com: [url "https://username:xxxxxxxx@gitee.com/"]
insteadOf = http://gitee.com/ [url "https://username:xxxxxxxx@gitee.com/"]
insteadOf = https://gitee.com/ [url "https://username:xxxxxxxx@gitee.com/"]
insteadOf = git@gitee.com: [url "https://username:xxxxxxxx@github.com/"]
insteadOf = http://github.com/ [url "https://username:xxxxxxxx@github.com/"]
insteadOf = https://github.com/ [url "https://username:xxxxxxxx@github.com/"]
insteadOf = git@github.com:

ssh:

更改 ssh 端口号:

vim ~/.ssh/config
Host code.???.com
Port 22222

特殊权限的 ssh-key,可以用以下命令添加:

ssh-add ~/.ssh/id_rsa_???

env:

一些常用的环境变量、别名,熟记它可以极大提升效率!

比如说:

  • 命令 l:快速查看当前文件夹,列表展示;
  • 命令 q:退出终端;
  • 命令 c:清屏!比 clear 爽多了!
  • 命令 aa:快速 ssh 连接堡垒机 1 号;
  • 命令 aa:快速 ssh 连接堡垒机 2 号;
  • 命令 gd:等同于 git diff
  • 命令 ga:等同于 git add .
  • 命令 gs:等同于 git status
  • 命令 gh:等同于 git push
  • 命令 gl:等同于 git pull
  • 命令 ghm:等同于 git push origin master
  • 命令 ua:把当前文件夹下的所有 git 工程更新到最新的 master 分支;
  • ……

最后,分享下我的配置吧:

alias l="ls -alht"
alias q="exit 0"
alias c="clear" alias aa="sshpass -p '???' ssh -p22 [my-name]@[host1]"
alias ss="sshpass -p '???' ssh -p22 [my-name]@[host2]" alias git='LANG=en_US.UTF-8 git'
alias gd="git diff"
alias gs="git status"
alias ga="git add ."
alias gh="git push"
alias gl="git pull"
alias ghl="git push origin [my-name]"
alias glm="git pull origin master"
alias ua='for dir in `ls`; do if [ -d $dir ]; then echo -e "----\n${dir}\n----";cd $dir;pwd=`pwd`;echo -e "----------> ${pwd}\n";git checkout master;git pull origin master;cd ..; fi; done;'
alias subl='/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl' export GOPATH=/Users/[my-name]/go
export GOPROXY='https://goproxy.cn,direct'
export GONOPROXY='code.???.com'
export GONOSUMDB='code.???.com'
export GOPRIVATE='code.???.com'
export GOSUMDB='sum.golang.google.cn'
export GO111MODULE=on export HOMEBREW_GITHUB_API_TOKEN=??? export PATH="/Users/[my-name]/env/bin:/Users/[my-name]/go/bin:/usr/local/sbin:/opt/homebrew/bin:$PATH"

文章来源于本人博客,发布于 2018-06-02,原文链接:https://imlht.com/archives/183/

分享我的 Shell 环境,git 操作效率提升 100% !的更多相关文章

  1. Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)【转】

    jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...

  2. 分享7个shell脚本实例--shell脚本练习必备

    概述 看多shell脚本实例自然就会有shell脚本的编写思路了,所以我一般比较推荐看脚本实例来练习shell脚本.下面分享几个shell脚本实例. 1.监测Nginx访问日志502情况,并做相应动作 ...

  3. windows python3.2 shell环境(python叫做解释器)

    [进入python的shell 环境:](python里称作命令解释器,windows叫做cmd,unix叫做shell) cmd  输入set path=%path%;e:\python2.7然后输 ...

  4. 9. shell环境

    • printenv –打印部分或所有的环境变量 • set –设置 shell 选项 • export —导出环境变量,让随后执行的程序知道. • alias –创建命令别名 1.shell环境:s ...

  5. shell环境

    1 引言 一个进程运行在shell环境中,理解进程运行的环境是十分重要的.环境影响着进程的行为,利用环境提供的便利,可以极大地提高开发效率.本节深入讨论shell中与进程有关的环境问题,包括命令行参数 ...

  6. Cygwin 是一个用于 Windows 的类 UNIX shell 环境

    cygwin的安装使用   Cygwin 是一个用于 Windows 的类 UNIX shell 环境. 它由两个组件组成:一个 UNIX API 库,它模拟 UNIX 操作系统提供的许多特性:以及 ...

  7. shell 环境变量的相关配置文件和配置方法

    shell 环境变量的相关配置文件和配置方法: bash 的配置文件: 全局配置: /etc/profile, /etc/profile.d/*.sh, /etc/bashrc 个人配置 ~/.bas ...

  8. Linux编程 12 (默认shell环境变量, PATH变量重要讲解)

    一 .概述 默认情况下, bash shell会用一些特定的环境变量来定义系统的环境.这些默认环境变量可以理解是上篇所讲的系统全局环境变量. 1.1 bash  shell支持的Bourne变量 Bo ...

  9. mutt+msmtp实现在shell环境中发送电子邮件

    作者:邓聪聪 为了自动化接收服务端的文件备份信息,利用mutt+msmtp在shell环境中发送电子邮件,轻松高效的完成运维工作. 下载msmtp wget http://downloads.sour ...

  10. shell环境改变引起的命令提示符改变

    1. 故障现象与背景 1.1 背景 开发早上找我说root环境变得异常,跟平时不太一样.其他用户没有改变,就root用户发生变化 1.2故障现象 root用户命令提示符 :➜ ~ 命令行上命令提示符发 ...

随机推荐

  1. docker-compose一键部署java开源项目

    这一年干的很多事都是为了降低我的开源项目消息推送平台austin使用门槛. 如果想学Java项目的,强烈推荐我的开源项目消息推送平台Austin(8K stars) ,可以用作毕业设计,可以用作校招, ...

  2. Java实现平衡二叉搜索树(AVL树)

    上一篇实现了二叉搜索树,本章对二叉搜索树进行改造使之成为平衡二叉搜索树(Balanced Binary Search Tree). 不平衡的二叉搜索树在极端情况下很容易退变成链表,与新增/删除/查找时 ...

  3. Consistency Models终结扩散模型

    最近看到一篇论文,觉得特别有意思,并且在学术界引起了不小的动静,他就是一致性模型,据说图像生成效果快.质量高,并且还可以实现零样本图像编辑,即不进行一些视觉任务训练,可以实现图像超分.修复.上色等功能 ...

  4. 【LeetCode动态规划#14】子序列系列题(最长递增子序列、最长连续递增序列、最长重复子数组、最长公共子序列)

    最长递增子序列 力扣题目链接(opens new window) 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度. 子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其 ...

  5. web 页面/内容 触摸/点击滑动

    监听标签的触摸/鼠标滑动事件,添加元素的切换动画,效果如下: 事件监听 鼠标事件和触摸事件监听: 1 componentDidMount() { 2 var teachingReportDiv = d ...

  6. Python网页开发神器fac 0.2.8、fuc 0.1.28新版本更新内容介绍

    fac项目地址:https://github.com/CNFeffery/feffery-antd-components fuc项目地址:https://github.com/CNFeffery/fe ...

  7. Prompt learning 教学[技巧篇]:通过增加示例、引导词、特殊符号指令等方式让chatgpt输出更好的答案

    Prompt learning 教学[技巧篇]:通过增加示例.引导词.特殊符号指令等方式让chatgpt输出更好的答案 技巧1:To Do and Not To Do 在问答场景里,为了让 AI 回答 ...

  8. 一些JS过滤方法

    一般过滤器我们都会卸载过滤filter文件内 本文这里就直接写正常methods格式的 //过滤空格 filterSpaces(data) { return data.replace(/\s+/g, ...

  9. POJ - 2251 地下城主

    You are trapped in a 3D dungeon and need to find the quickest way out! The dungeon is composed of un ...

  10. Cannot read property ‘type‘ of undefined Occurred while linting **\index.jsx:1

    今一个react 中使用mobx 老是提示Cannot read property 'type' of undefined Occurred while linting **\index.jsx:1 ...