分享我的 Shell 环境,git 操作效率提升 100% !
每当我换到一个新的开发环境,蛮多东西要折腾的。比如 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% !的更多相关文章
- Linux下的Jenkins+Tomcat+Maven+Git+Shell环境的搭建使用(jenkins自动化部署)【转】
jenkins自动化部署 目标:jenkins上点构建(也可以自动检查代码变化自动构建)>>>项目部署完成. 一.安装jenkins 1.下载jenkins 这里我选择的是war包安 ...
- 分享7个shell脚本实例--shell脚本练习必备
概述 看多shell脚本实例自然就会有shell脚本的编写思路了,所以我一般比较推荐看脚本实例来练习shell脚本.下面分享几个shell脚本实例. 1.监测Nginx访问日志502情况,并做相应动作 ...
- windows python3.2 shell环境(python叫做解释器)
[进入python的shell 环境:](python里称作命令解释器,windows叫做cmd,unix叫做shell) cmd 输入set path=%path%;e:\python2.7然后输 ...
- 9. shell环境
• printenv –打印部分或所有的环境变量 • set –设置 shell 选项 • export —导出环境变量,让随后执行的程序知道. • alias –创建命令别名 1.shell环境:s ...
- shell环境
1 引言 一个进程运行在shell环境中,理解进程运行的环境是十分重要的.环境影响着进程的行为,利用环境提供的便利,可以极大地提高开发效率.本节深入讨论shell中与进程有关的环境问题,包括命令行参数 ...
- Cygwin 是一个用于 Windows 的类 UNIX shell 环境
cygwin的安装使用 Cygwin 是一个用于 Windows 的类 UNIX shell 环境. 它由两个组件组成:一个 UNIX API 库,它模拟 UNIX 操作系统提供的许多特性:以及 ...
- shell 环境变量的相关配置文件和配置方法
shell 环境变量的相关配置文件和配置方法: bash 的配置文件: 全局配置: /etc/profile, /etc/profile.d/*.sh, /etc/bashrc 个人配置 ~/.bas ...
- Linux编程 12 (默认shell环境变量, PATH变量重要讲解)
一 .概述 默认情况下, bash shell会用一些特定的环境变量来定义系统的环境.这些默认环境变量可以理解是上篇所讲的系统全局环境变量. 1.1 bash shell支持的Bourne变量 Bo ...
- mutt+msmtp实现在shell环境中发送电子邮件
作者:邓聪聪 为了自动化接收服务端的文件备份信息,利用mutt+msmtp在shell环境中发送电子邮件,轻松高效的完成运维工作. 下载msmtp wget http://downloads.sour ...
- shell环境改变引起的命令提示符改变
1. 故障现象与背景 1.1 背景 开发早上找我说root环境变得异常,跟平时不太一样.其他用户没有改变,就root用户发生变化 1.2故障现象 root用户命令提示符 :➜ ~ 命令行上命令提示符发 ...
随机推荐
- 迁移学习(CLDA)《CLDA: Contrastive Learning for Semi-Supervised Domain Adaptation》
论文信息 论文标题:CLDA: Contrastive Learning for Semi-Supervised Domain Adaptation论文作者:Ankit Singh论文来源:NeurI ...
- 如何玩转国产神器:接口一体化协作平台Apifox!
前言:Apifox是什么? 简介: 简单来说,Apifox = swagger + mock + postman+Jmeter,是API 文档.API 调试.API Mock.API 自动化测试一体化 ...
- 开心档之MySQL ALTER命令
MySQL ALTER命令 当我们需要修改数据表名或者修改数据表字段时,就需要使用到MySQL ALTER命令. 开始本章教程前让我们先创建一张表,表名为:testalter_tbl. root@ho ...
- mysql 自动挂掉
今天在看后台的时候,发现登录不上去了,登录页面是可以访问,但是就是登录不上去,上了后台看了一下,说mysql连接超时,然后我重启了一下服务器,发现依然报mysql的错误,我尝试连接mysql, 报了一 ...
- node使用react项目启动错误TSError: ⨯ Unable to compile TypeScript:
1.错误内容 return new TSError(diagnosticText, diagnosticCodes) ^ TSError: ⨯ Unable to compile TypeScript ...
- 【Redis】数据类型介绍
一.字符 string Redis常用基本类型之一,存入Redis的所有key都是字符类型,常用于保存Session信息 字符类型 命令 含义 复杂度 set <key> <valu ...
- Vue拖拽排序
转载至https://www.crazyming.com/note/757/ 使用拖拽功能来实现排序. 需要先学习w3cschool 关于拖拽的教程:http://www.w3school.com.c ...
- 2022-01-23:力扣425,单词方块。 给定一个单词集合 (没有重复),找出其中所有的 单词方块 。 一个单词序列形成了一个有效的单词方块的意思是指从第 k 行和第 k 列 (0 ≤ k < m
2022-01-23:力扣425,单词方块. 给定一个单词集合 (没有重复),找出其中所有的 单词方块 . 一个单词序列形成了一个有效的单词方块的意思是指从第 k 行和第 k 列 (0 ≤ k < ...
- vue全家桶进阶之路3:Node.js
Node.js发布于2009年5月,由Ryan Dahl开发,是一个基于Chrome V8引擎的JavaScript运行环境,使用了一个事件驱动.非阻塞式I/O模型, 让JavaScript 运行在服 ...
- 手动封装XMLHttpRequest
自己动手封装一个XMLHttpRequest, 兼容低版本浏览器,自动检测post与get 类型请求,自动参数拼接,参数类型辨别 <!DOCTYPE html> <html> ...