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

告别终端!在Mac版IDEA里搞定GitLab仓库的图形化操作指南 本文详细介绍了如何在Mac版IntelliJ IDEA中通过图形化界面高效操作GitLab仓库,包括环境配置、仓库管理、分支操作及Merge Request流程。告别繁琐的Git命令行,利用IDEA内置工具实现代码提交、冲突解决等操作,提升开发效率。特别适合从VS Code转投IDEA或希望简化Git操作的开发者。 阅读详情

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下不支持,可以自己修改,或者自己添加。
通过mac的idea终端使用git命令 关于很多人问到的mac系统下如何优雅使用命令行进行代码提交的问题。 阅读详情

相关推荐

从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...

Mike_CSU的博客 2770

在Mac IntelliJ IDEA中配置Git

在Mac IntelliJ IDEA中配置Git

m0_58019259的博客 5483

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

。

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

git安装及简单实用

qq_40342691的博客 6788

用ESP32和HomeSpan自制HomeKit智能灯,手把手教你从零接入苹果家庭App

本文详细介绍了如何使用ESP32开发板和HomeSpan开源库自制原生HomeKit智能灯,从硬件搭建到软件配置,再到通过苹果家庭App控制的全过程。项目绕过了苹果MFi认证,成本低廉但功能完整,支持Siri语音控制、自动化场景等高级功能,是智能家居DIY的实用指南。

weixin_28717431的博客 321

样本不均衡时AUC反而下降?用imbalanced-learn库实战解决分类陷阱

本文探讨了样本不均衡时AUC指标下降的现象,并通过imbalanced-learn库实战演示了如何解决这一分类陷阱。文章详细分析了不同采样技术(如SMOTE、ADASYN)对模型性能的影响,并提供了XGBoost和逻辑回归模型的优化建议,帮助数据科学家在实际项目中做出更明智的决策。

weixin_29174013的博客 343

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

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

2301_81848812的博客 1618

FDTD远场分析实战:从monitor数据到3D远场可视化的完整流程

本文详细介绍了FDTD远场分析的完整流程,从monitor采集的近场数据出发,通过近场-远场变换(NFFFT)生成3D远场可视化结果。文章重点解析了远场转换的物理原理、关键参数设置,并提供了构建稳健数据处理流水线及高级可视化(如3D辐射方向图)的实战脚本与技巧,适用于天线设计与光学器件分析。

weixin_29063035的博客 228

计算机总结

可以简单理解成一个目录,这个目录里面的所有文件都可以被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

UniApp实战:5分钟搞定后台持续定位与轨迹实时更新(附完整代码)

本文详细介绍了在UniApp中实现后台持续定位与动态轨迹地图系统的完整方案。针对物流配送、运动健身等场景,文章深入讲解了权限申请、坐标系选择、定位防抖优化、地图轨迹线(polyline)实时绘制等核心步骤,并提供了可复用的完整代码,帮助开发者高效解决App切后台定位停止、轨迹漂移等常见难题。

weixin_29266679的博客 483

Java代码变更影响分析:从静态解析到动态调用图的实战全链路

本文介绍了Java代码提交影响分析的核心原理与实现方法。主要内容包括:1)静态分析技术,通过JavaParser解析AST构建调用图,记录类与方法间的调用关系;2)动态分析技术,使用ByteBuddy进行字节码增强,捕获运行时调用路径;3)JCCI工具实现,结合javalang、unidiff等技术分析代码改动影响,并将结果存储到SQLite数据库。文章提供了完整的代码示例,展示了从AST解析、动态调用跟踪到实际工具应用的完整技术栈,为代码变更影响分析提供了实用解决方案。

墨夶的博客 1252

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

1. shell。

fei33423的专栏 301

请尽可能地详细说明一个VLA项目的立项训练到落地的全流程

一个机器人VLA项目的全流程是一个复杂的系统工程,它深度融合了机器人学 (Robotics)计算机视觉 (CV)和自然语言处理 (NLP)。其核心挑战在于高质量数据的获取和从仿真到现实的有效迁移。与纯粹的软件AI项目相比,它增加了硬件、物理交互和安全性的维度,但其最终能让AI走出虚拟世界、在物理世界中产生实际价值,这也是其巨大的魅力所在。

具身机器人和通用AI 303

个人、总结

可以简单理解成一个目录,这个目录里面的所有文件都可以被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

ADC的有效位数(ENOB)、信噪比(SNR)和无杂散动态范围(SFDR)——详细分析

设计提示(从文本):选择ADC时,看数据手册的SNR、ENOB、SFDR vs 频率图。减小抖动:用低抖动时钟、优化PCB、电源滤波。对于大信号:关注SFDR(失真);小信号:关注SNR/ENOB(噪声)。如果ENOB不足,用过采样或多ADC并行提升(但增加复杂度)。为什么这段重要?它解释了为什么高速ADC(如用于5G、雷达)的规格那么贵:抖动和失真限制了高频性能。理解这些,能帮你避免设计陷阱。

VectorShift的博客 1406

高云FPGA系列教程(8):ARM串口数据接收(中断和轮询方式)

GW1NSR-4C ARM部分共有2个串口外设,都挂载在APB1总线上,最高支持波特率921.6Kbit/s,无奇偶校验位,8位数据位,1位停止位,支持高速测试模式 HSTM(High Speed Test Mode),即每个时钟周期输出1位数据,可以在短时间内传输大量数据。官方手册上没有描述发送和接收缓存FIFO的深度,所以不确定是否支持缓存。

whik1194的博客 1685

解决升级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

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

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万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

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

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

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、付费专栏及课程。

余额充值