idea提交代码到git以及git常用命令详解

 更新时间:2026年06月04日 09:05:28   作者:我叫晨曦啊  
这段描述主要介绍了Git的基本操作,包括初始化本地仓库、添加到缓存区、提交到本地库及推送至远程仓库等并详细解释了如何设置Git全局配置、创建远程仓库以及使用HTTPS和SSH协议进行代码克隆和推送操作

本次操作以将本地代码提交到gitlab为例,不过都大同小异,差别不大。

Git 作为分布式版本控制软件,存储文件的位置叫做仓库。仓库有远程仓库(互联网上一台服务器或局域网内的一台服务器)和本地仓库(本机的一个目录)两种。

  1. 系统中任意文件夹都可以作为本地仓库。本地仓库需要先初始化,生成git基本配置。
  2. 然后把本地的操作添加到缓存区。
  3. 把缓存区操作提交到本地库。
  4. 最后把本地库数据推送到远程仓库。

安装设置

​git 想要把自己的内容提交到远程仓库,需要进行全局设置远程账号的用户名和邮箱。

// 设置自己的用户名
git config --global user.name "你的用户名"
// 设置自己的邮箱
git config --global user.email "你的邮箱"

设置成功后会在C:\Users\你的Windows系统账号名(此目录是Windows系统账号名)中出现.gitconfig文件。此文件中存储了上面命令设置的账号及邮箱。

// 查看当前git版本
git --version
// 查看当前的git配置
git config --list

在gitlab上创建远程仓库

新建项目–>创建空白项目

仓库创建成功

http和ssh链接的区别

使用https url克隆对初学者来说会比较方便,复制https url然后到git Bash里面直接用clone命令克隆到本地就好了,但是每次fetch和push代码都需要输入账号和密码,这也是https方式的麻烦之处。

使用SSH url克隆却需要在克隆之前先配置和添加好SSH key,因此,如果想要使用SSH url克隆的话,必须是这个项目的拥有者。否则是无法添加SSH key的,另外ssh默认是每次fetch和push代码都不需要输入账号和密码,如果想要每次都输入账号密码才能进行fetch和push也可以另外进行设置。

新建本地仓库

初始化

定位到要提交的项目文件上直接点击OK即可

init完成之后,可以看到原本的项目文件名变成红色,红色在idea的git版本表示未add的文件,同时在系统资源管理中打开项目的磁盘文件目录,会发现一个.git的隐藏文件,这个文件就git的配置和仓库文件; 

// 初始化命令,初始化完成后,虎会在目录中出现隐藏目录  .git
git init

添加到缓存区

回到idea项目中,点击VCS>Git>Add添加当前项目下的文件,添加完成之后,之前的红色文件名变成了绿色了,表示已经Add成功,但还没有commit 

// add命令
git add 要添加的文件名

提交到本地仓库

VCS>Git>Commit File,然后在提交创建填写提交注释说明
// commit命令
git commit -m “自定义注释”

推送到远程仓库

提交完成之后,只是提交到本地仓库,这个时候还没有同步到远程的gitlab服务上,需要push操作,VCS>Git>Push

在弹出的窗口中点击“Define remote”,会弹出一个新窗口,在URL中添加从gitlab中复制的http链接

// 设置远程仓库地址
git remote add origin 远程仓库URL地址
// 推送到远程仓库
git push -u origin 分支名称

弹出这个窗口后点击push

控制台或者屏幕右下角出现以下文字,代码提交到gitlab成功

Pushed master to new branch origin/master

常用命令

状态

命令:git status

  • 没有添加到缓存区的状态(add前),通过命令查看,文件名显示为红色
  • 添加到缓存区后的状态(add后),通过命令查看,文件名显示为绿色
  • 提交到本地仓库后的状态(commit后)通过命令查看,没有文件提示
  • 修改已提交的文件且没有添加到缓存区时,通过命令查看,显示为红色  modified:文件名
  • 修改已提交的文件且添加到缓存区后,通过命令查看,显示为绿色  modified:文件名

克隆

// 将远程仓库的内容下载到本地
git clone 远程仓库http地址链接

拉取

// 拉取远程仓库内容到本地
git pull origin 分支名

删除

删除代码有风险,操作需谨慎!!!

// 删除文件
git rm 文件名
// 删除状态
git status    被执行过删除命令的文件查看状态显示为绿色    deleted: 文件名
// 提交删除操作
git commit -m “删除信息”
// 提交到远程仓库
git push -u origin 分支名

日志

// 查看日志及其版本号
git log

// 日志简化
git log --pretty=oneline
    
// 查看简短日志
git reflog

版本回退

// 回退到指定版本
git reset --hard [局部版本号]

分支

  • master:主分支
  • develop:开发分支
  • 临时分支:功能分支、预发分支、修补bug分支
// 创建分支,此时创建的分支只是在本地仓库创建分支,远程仓库并没有创建
git checkout -b 新分支名 master

// 查看本地所有分支,哪个分支是绿色且前面带有*号,就是是当前所在分支。
git branch

// 推送本地分支到远程
git push origin 本地分支名:远程分支名

// 使本地分支与远程分支创建联系
git branch --set-upstream-to=origin/分支名

// 分支切换
git checkout 分支名

// 合并分支,把分支合并到当前分支
// 例如:把develop合并到master分支中,需要先切换到master,然后执行合并命令
git merge --no-f 分支名

// 删除本地分支
// 如果当前正处于这个分支,是不能删除这个分支的,需先切换到其他分支
git branch -d 分支名

// 删除远程仓库中分支
git push origin --delete 分支名

报错

 SSL certificate problem: self signed certificate in certificate chain
 
 git config --global http.sslVerify false

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Hibernate环境搭建与配置方法(Hello world配置文件版)

    Hibernate环境搭建与配置方法(Hello world配置文件版)

    这篇文章主要介绍了Hibernate环境搭建与配置方法,这里演示Hello world配置文件版的具体实现步骤与相关代码,需要的朋友可以参考下
    2016-03-03
  • Java数据结构与算法之栈(动力节点Java学院整理)

    Java数据结构与算法之栈(动力节点Java学院整理)

    这篇文章主要介绍了Java数据结构与算法之栈,栈是先进后出的数据的结构,本文通过文字说明与实例代码相结合的形式给大家介绍的非常详细,需要的朋友跟着小编一起学习吧
    2017-04-04
  • Eclipse中创建Web项目最新方法(2023年)

    Eclipse中创建Web项目最新方法(2023年)

    在Java开发人员中,最常用的开发工具应该就是Eclipse,下面这篇文章主要给大家介绍了关于Eclipse中创建Web项目2023年最新的方法,需要的朋友可以参考下
    2023-09-09
  • 详解Mybatis是如何把数据库数据封装到对象中的

    详解Mybatis是如何把数据库数据封装到对象中的

    这篇文章主要介绍了Mybatis是如何把数据库数据封装到对象中的,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • IDEA 2020 无法启动的解决办法(启动崩盘)附IDEA 2020 新功能

    IDEA 2020 无法启动的解决办法(启动崩盘)附IDEA 2020 新功能

    这篇文章主要介绍了IDEA 2020 无法启动的解决办法(启动崩盘)附IDEA 2020 新功能,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • Java实现整数的逆序输出的三种方法

    Java实现整数的逆序输出的三种方法

    这篇文章主要介绍了Java实现整数的逆序输出的三种方法,第一种是无限制整数的逆序输出,第二种是非负整数的逆序输出,第三种是非特殊情况的逆序输出,每种方法给大家讲解的非常详细需要的朋友可以参考下
    2022-11-11
  • Java实现AES加密和解密方式完整示例

    Java实现AES加密和解密方式完整示例

    这篇文章主要给大家介绍了关于Java实现AES加密和解密方式的相关资料,AES加密为最常见的对称加密算法,是一种区块加密标准,这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用,需要的朋友可以参考下
    2023-10-10
  • Java发送form-data请求的实例代码

    Java发送form-data请求的实例代码

    在Java中发送form-data请求,可以使用Apache HttpClient或OkHttp这样的HTTP客户端库来发送请求,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-10-10
  • 使用React和Java实现文本摘要小工具

    使用React和Java实现文本摘要小工具

    本文将详细介绍如何使用 React 和 Java 搭建一个小型文本摘要工具,并基于 Hugging Face 提供的 API 来实现智能摘要功能,感兴趣的可以了解下
    2024-11-11
  • 浅谈Java中的重载,重写,多态,静态绑定、动态绑定

    浅谈Java中的重载,重写,多态,静态绑定、动态绑定

    这篇文章主要介绍了浅谈Java中的重载,重写,多态,静态绑定、动态绑定,具有一定借鉴价值
    2018-01-01

最新评论