mac系统下通过idea使用git指令

通过mac的idea终端使用git命令 关于很多人问到的mac系统下如何优雅使用命令行进行代码提交的问题。 阅读详情

mac系统通过idea终端使用git

一、引言

本文旨在解决使用idea过程中,提交和合并代码时idea卡顿和响应慢以及过程繁琐的问题。

1.1 文章背景

  • 结合我曾遇到的问题吧,当时因为一些小小的改动,需要频繁去将开发分支合并到test发版测试,过程繁琐不说,使用idea图形化界面还卡得要死;
  • 后续是使用终端写git指令,效果虽然好点,但是每次add commit push merge 还是很头疼;
  • 后来是写了一个shell脚本,把这些命令封装在一起,每次提交直接运行脚本,效果还可以;
  • 最后是直接通过别名的方式,直接在系统下配置别名,直接在终端使用别名,效果好多了。

1.2 文章目标

  • 在网上看到很多同行有这方面的困扰,希望能够帮助他们
  • 把我自己觉得能提升效率的方法或者方式,分享出来
  • 我觉得我提供的是解决问题的方案,实际上可以有很多扩展,我们可以做很多事
  • 并不是仅仅局限于idea,而是能够辐射到所有使用mac,windows,linux等开发环境的开发者。

二、解决方案

2.1

写一个脚本,命名为 .bashrc ,内容如下

alias gs="git status" # to see changes that have been staged and which haven't
alias ga="git add . "  # add 
alias gb="git branch" # branches
alias gf="git fetch origin --recurse-submodules=no --progress --prune" # git fetch
alias gbr="git branch -r" # remote branches
alias gcu="git rev-parse --abbrev-ref HEAD" # current branch
alias gac="git add . && git commit -m" # to stage and commit changes
#git push and pull
alias gp="git push" # + remote & branch names
alias gpl="git pull" # + remote & branch names
# Pushing/pulling to origin remote
alias gpo="git push origin" # + branch name
alias gcb="git checkout -b" # To create a new branch and checkout into it
alias gcm="git checkout master"
alias gcmp="git checkout master && git  pull"
alias gct="git checkout test"
alias gctp="git checkout test && git  pull"
alias gcp="git checkout pre"
alias gcpp="git checkout pre && git  pull"
alias gcd="git checkout dev"
alias gcdp="git checkout dev $$ git pull"
alias gl="git log"
alias g="git"
alias gd="git branch -d"


alias mc="mvn clean"
alias mci="mvn clean -U install -Dmaven.test.skip=true "
alias mcc="mvn clean -U compile -Dmaven.test.skip=true "
alias md="mvn -Dfile.encoding=UTF-8 smart-doc:rpc-html "
alias mr="mvn spring-boot:run"
# pull add commit push 
gacp(){ git pull && git add . && git commit -m "$1" && git push;}

gmttp(){
    currentbranch=$(git rev-parse --abbrev-ref HEAD)
    git checkout test && git pull && git merge "$currentbranch" && git push && git checkout "$currentbranch";
}
gmttpi(){
    currentbranch=$(git rev-parse --abbrev-ref HEAD)
    git checkout test && git pull && git merge "$currentbranch" && git push && mci && git checkout "$currentbranch";
}
gmtpp(){
    currentbranch=$(git rev-parse --abbrev-ref HEAD)
    git checkout pre && git pull && git merge "$currentbranch" && git push && git checkout "$currentbranch";
}
gmttp2(){
    currentbranch=$(git rev-parse --abbrev-ref HEAD)
    git checkout "$1" && git pull && git merge "$currentbranch" && git push && git checkout "$currentbranch";
}

# 合并代码,不切换回来
gm(){
    currentbranch=$(git rev-parse --abbrev-ref HEAD)
    git pull && git add -A && git commit -m $1 
    git push && git checkout $2 && git pull 
    git merge "$currentbranch" && git push 
}
# 合并代码 切换回来
gmc(){
    currentbranch=$(git rev-parse --abbrev-ref HEAD)
    git pull  
    git add -A 
    git commit -m $1 
    git push 
    git checkout $2 
    git pull 
    git merge "$currentbranch" 
    git push 
    git checkout "$currentbranch"
}

# push新分支
gpNew(){
    currentbranch=$(git rev-parse --abbrev-ref HEAD)
    git push --progress --porcelain origin refs/heads/$currentbranch:refs/heads/$currentbranch --set-upstream
}
gdRemote(){
    git push --progress --porcelain origin :$1
}
gc(){
    git checkout $1 && git pull
}
# 切换分支 ,存在分支,直接切换,不存在时从master拉取新分支并提交
gcSafe(){
    git checkout $1
    if [ $? -eq 0 ] ; then
       echo "$1 分支存在,切换成功。"
       git pull
    else
       echo "$1 分支不存在,开始新建"
       sourceBranch=master
       if [ -n "$2" ]; then
          sourceBranch=$2
       fi
       git checkout -b $1 origin/$sourceBranch^0 --
       echo "从 $sourceBranch 拉取远程分支 $1 成功"
       git push --progress --porcelain origin refs/heads/$1:refs/heads/$1 --set-upstream
       echo "push 成功!"
    fi
}

# 编辑本文件
eb(){
    echo "开始编辑.bashrc文件==="
    open ~/.bashrc
}

# 加载本文件
rb(){
    source ~/.bash_profile
    echo "执行成功!"
}

# 给文件设置最高权限 
c7(){
    chmod 777 $1
}

#去桌面
god(){
    cd ~/Desktop
}

2.2

将文件复制到用户目录(~)下,然后在~/.bash_profile(没有该文件新建一个)中添加如下内容

source ~/.bashrc

终端中执行 source ~/.bash_profile

2.3 使用,举几个简单的例子

在idea中,打开终端,输入命令:

  • gmc 提交代码 test,表示的意思就是在当前分支提交代码,切换到test分支,然后合并到test并提交,最后切换回来当前分支继续开发;
  • gcSafe feat_20240101,表示如果存在feat_20240101分支,切换到feat_20240101分支,如果不存在,从master拉取feat_20240101分支;
  • gc test ,表示切换到test分支,test分支不存在不切换;
  • eb 打开并编辑.bashrc文件;
  • rb 重新加载.bashrc文件;
  • gbr 显示远程分支;
  • gb 显示本地分支;
  • gdRemote test ,删除远程分支test;
  • gd test,删除本地分支test;
  • mci,mc,mvn命令,可以自己查看一下,我这里就不解释了。

2.4 关于扩展

实际能使用的功能是非常多的,我这里只是简单的举例,可以自己扩展,希望能帮到你。

三 后记

关于windows 中的使用实际也很简单:

  • 创建.bashrc文件,把文件丢到用户目录下;
  • 打开idea,打开设置搜索terminal,点开shell path,选择git路径,然后确定;
  • 就可以在idea终端使用以上命令了
  • 当然,上面的.bashrc文件,是在mac系统下写的,可能有些指令在win下不支持,可以自己修改,或者自己添加。
从GIT上导入项目到idea 配置SSH 秘钥 过程 MAC版 1.终端配置git操作信息 $ git config --global user.name "随便取名" $ git config --global user.email "GitHub邮箱" 2. 终端输入命令生产key $ ssh-keygen -t rsa 生成SSH key,下面三处直接回车就行 3.通过上面路径Users/wangbo/.ssh找到id_rsa.pu... 阅读详情

相关推荐

git安装配置以及在intellijidea中使用git的配置.pdf

。

在Mac IntelliJ IDEA中配置Git

在Mac IntelliJ IDEA中配置Git

m0_58019259的博客 5483

CSAPP performance lab

CSAPP 深入理解计算机系统的performance Lab

weixin_46091531的博客 1253

记录一次mac电脑安装git并在idea中使用的问题

git安装及简单实用

qq_40342691的博客 6788

红米12C刷机避坑指南:NV数据损坏的修复与系统版本选择

本文提供了红米12C刷机过程中避免NV数据损坏的详细指南,涵盖系统版本选择、SP刷机工具使用和fastboot命令修复。重点分析了NV数据损坏的原因与表现,并给出通过工程固件和深度修复技巧解决基带未知、IMEI丢失等问题的实操方案,帮助用户安全完成刷机。

cuda7parallel的博客 1075

OpenClaw(小龙虾) 安装部署教程

OpenClaw(原名Clawdbot)是一个开源的、可本地部署的个人AI助理,它能接入飞书、钉钉等即时通讯工具,帮你处理邮件、管理文件,甚至控制电脑。

qq_40668700的博客 1383

Mac 版 IDEA 中配置 GitLab

通过终端输入以下命令来配置用户名和邮箱,这些信息将用于记录你所有的提交历史:也可以通过。,然后按下回车,接着连续按三次回车即可在你的用户目录(一般是。账号或其他远程仓库的账户设置中,就可以开始你的代码托管之旅。回车后,就会新弹出一个终端,然后复制里面的。安装完太大,占用空间,如果不需要安装。按钮,如果安装过则会输出如下信息。的必选装备,而且是免费的。进行验证,输出如下信息表示成功。时,为了验证你的身份通常需要使用。的一个包管理工具,如果未安装。二进制安装,点击下载的。,功能非常强大,是开发。

程序猿进阶 9047

【Ambari-Metrics监控】Grafana+Infinity快速构建DEMO-实战教学

摘要:本文介绍了如何通过Infinity插件在Grafana中监控Ambari-Metrics(AMS)的CPU核数指标。内容包括配置AMS REST API数据源、创建Dashboard面板、设置JSON解析规则,将时间戳和数值映射为时序数据。最终实现单个节点CPU核数曲线的可视化展示,该方法可扩展至其他AMS指标监控。文章提供了完整的配置示例和API调用验证方法,适用于Grafana 9.x及以上版本对接Ambari集群监控场景。

TTBIGDATA的博客 1352

一.远程仓库上传数据代码

使用命令上传gitee打开文件所在目录,右键更多用git bash 打开,之后输入下面语句第一次上传的时候,不要有readme(和仓库里面同名的文件)git init ·创建仓库git remote add origin +仓库地址git add .git commit -m"第一次提交"常见的系统win dos 指令mac (苹果) shell 指令liunx(命令终端的 没有磁盘的概念 文件夹 并且在操作的时候都是使用指令) 安卓 鸿蒙 shell 指令。

2301_81848812的博客 1618

【ITS模型】基于MATLAB的ITS宽带短波信道模型的建模和仿真

1.软件版本 MATLAB2010b 2.本算法理论知识 对短波信道建模具有里程碑意义的是沃特森在1970年发表的一篇文章,文章中提出了一种静态模型,并在大气中进行了实验验证。 此静态模型可以描述为高斯散射增益抽头延迟线模型,即Watterson模型。 Watterson信道模型是经典的窄带短波信道模型,在这个模型中,信道衰落是瑞利幅度分布,而在每种传播模式中多普勒扩展的功率谱满足高斯分布。Watterson模型没有定义延时扩展的形状,认为各个多径传输模式中不存在延时扩展。其...

FPGA/MATLAB学习教程/源码/项目合作开发 2757

在 SAP HANA 与 HANA Cloud 中,用 SQL DDL 创建数据库视图:从设计时工件到运行时对象的全链路实践

本文介绍了在SAP HANA中通过HDI容器使用DDL定义视图的方法。主要内容包括:1)采用.hdbview设计时工件存储视图定义,构建时自动转换为运行时视图,实现版本控制和权限隔离;2)开发前需准备HDI容器、MTA项目及配置.hdiconfig文件;3)详细说明.hdbview语法结构,重点讲解WITH READ ONLY和WITH STRUCTURED PRIVILEGE CHECK的使用场景;4)提供了从创建文件到构建验证的完整流程示例;5)强调跨容器访问时需通过.hdbgrants为#OO用户授予

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 275

计算机总结

可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。[alt 图标](https://www.runoob.com/wp-content/uploads/2015/02/git-process.png)HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。2 个目录 284,864,032,768 可用字节。

hbn777的博客 979

SAP_ABAP_SD_BAPI清单案例教程——销售订单开票_BAPI_BILLINGDOC_CREATEMULTIPLE_VF01_S4版本

SAP BAPI(Business Application Programming Interface)是SAP系统中的一组规范和标准,用于从SAP系统中获取数据、输入数据和更新数据。这些API允许开发者以编程方式与SAP系统交互,而无需编写大量的自定义代码。2.1 Copy代码 直接可使用。2.2 VF01开票。

java_zhong1990的专栏 2214

人人都是mac电脑开发者 mac新电脑配置

1. shell。

fei33423的专栏 301

基于STM32开发板的USB MIDI键盘实现

在本文中,我们介绍了如何使用STM32开发板和相应的软件工具来实现USB MIDI键盘。通过配置STM32CubeMX和编写相应的源代码,我们能够将STM32开发板转换为一个功能齐全的USB MIDI设备。我们将使用STM32开发板和相应的软件工具来实现这一功能,并提供相应的源代码供参考。此时,您应该可以使用STM32开发板作为USB MIDI键盘,并在按键按下时听到相应的音符。在STM32CubeMX中,选择适当的STM32型号,并启动一个新的项目。然后,将生成的可执行文件烧录到STM32开发板中。

2301_79326616的博客 1589

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

个人、总结

可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。[alt 图标](https://www.runoob.com/wp-content/uploads/2015/02/git-process.png)HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。2 个目录 284,864,032,768 可用字节。

w123cs456的博客 741

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

解决升级MAC之后IDEA中的GIT不能用的问题

解决升级MAC之后IDEA中的GIT不能用的问题问题描述解决办法 问题描述 最近升级了MAC版本,然后重新打开IDEA,并使用GIT时,发现IDEA有一个弹窗报错:Cannot Run Git,查看详细的报错信息: xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing x...

Walle的博客 3178

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Mac安装Git并配置到IDEA(超简单)

一、安装Git 1、在Mac的终端上输入git检测是否安装git,如果没有,点击弹出的“安装”按钮。 https://git-scm.com/downloads 或者 git 2、安装完成之后,在终端输入 git --version 查看版本信息 git --version 在终端输入 git --version 查看版本信息 3、创建一个全局用户名、全局邮箱作为配置信息 git config --global user.name "your_name" git config --global us

ZiYueD的博客 1万+

idea中使用git和svn

svn 首先是idea中集成svn,很简单,idea中,点击file的setting,找到vesion controlled,然后再找到svn,就可以将从网络中下载到的svn的安装路径填入,如图: 然后就可以用svn了。 选中后,出现了这个框,输入版本库的url就好了 GIT 集成到idea中,和svn一样,再version control中找到GIT,然后,将下载到的git.exe路...

qq_42031483的博客 1899

Mac系统idea集成Git后VCS菜单栏被替换为Git解决方案

Mac系统idea集成Git后VCS菜单栏被替换为Git解决方案

每天进步一点点... 6129

mac idea 注册服务器,mac idea配置使用git

1、mac安装查看gitgit --version默认有安装2、配置(命令行操作服务器)mac创建本地创建本地ssh-key,远程代码库服务器地址:192.168.2.10ssh-keygen -t rsaGenerating public/private rsa key pair.Enter file in which to save the key (/Users/tangscott/.ssh...

weixin_36447301的博客 881

Mac环境 idea git问题解决

Mac环境 idea git问题解决第一次使用mac,接触ios系统,新公司使用自己搭建的git服务器,要求使用公司邮箱生成的ssh密钥登陆,安装过程遇到以下两个问题Permission denied(public key), please try againidea git输入完地址要求输入密码 第一次使用mac,接触ios系统,新公司使用自己搭建的git服务器,要求使用公司邮箱生成的ssh密钥...

qq_23842575的博客 957

mac下idea导入git项目并运行

1.选择Check out from Version Control–>Git 复制框中的项目地址 2.url框为我门上一步从git复制的项目地址 directory为我们把项目克隆的位置 然后点击Clone 3.导入项目之后如果提示没有sdk则需要手动配置java路径 4.打包项目 选择右侧的快捷方式Maven Projects 选择merak 选择clean...

m0_37301141的博客 1万+

idea如何使用git

掌握以上操作后,你可以在 IDEA 中高效管理代码版本!

zwh1zwh的博客 2751

Mac环境Idea使用git终端terminal

Mac中 intellij Idea 使用系统终端terminal 之前在 win 系统中比较喜欢使用 git 的 bash 弹窗,自己敲命令行 转换到 mac 发现想自己敲命令和win不太一样,需要装插件。 装完重启即可,右键项目就可以使用了 ...

weixin_37605393的博客 5666

Mac下安装配置git/idea连接GitHub

安装软件、配置用户名和密码 (1)登陆git的官网:http://www.git-scm.com/ 。点击如图位置下载即可 (2)下载完成后,如图所示,点击安装即可。 安装好Git后,配置用户名和用户邮箱,以后每次与Git的交互都会使用该信息。 git config --global user.name “your_name” git config --global user.email "...

AthlenaA的博客 5067
上一篇: 通过mac的idea终端使用git命令
下一篇: 浅谈策略模式的使用
桥边红药_
博客等级 码龄5年 40粉丝 11原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值