Git,Git的简单命令,在IDEA中的简单用法

前言:

  最近博主在学习Git,仅想通过编写博客加强自己对Git的认识,这也是博主的第一篇博客,如有不善之处,敬请指正(博主是个蒟蒻)

01-Git是什么

  Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。(转自百度)

 

   什么是版本控制?为什么需要版本控制?

  版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。 版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本, 方便版本切换。

  试想一下,如果没有一个高效的版本控制系统,而是手动的进行版本更新(如下图);你不知道你的下一版代码是否有bug,或是不如上一版本,你就不得不在每次更新后保存一次代码,非常影响开发效率。再者,一个大的项目,不可能由你一个人开发,在同一时间,许多开发人员都同时进行着开发,在员工A修改代码时,如果没有一个可以好用的版本控制工具,员工B就必须等员工A修改完后再进行修改(或者同时修改,后面还是得自己合并),也是开发项目的忌讳

02-Git下载(git官方地址:git-scm.com

   这里进入官网,默认配置下载即可,不多赘述

03-Git常见命令

 

设置用户名和邮箱

git config --global user.name "BaiDie"
git config --global user.email "BaiDie@163.com"

签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看 到,以此确认本次提交是谁做的。Git 首次安装必须设置一下用户签名,否则无法提交代码。

 

查看本地库的状态

git status

首次查看或者文件没有发生变化

当有文件发生变化(文件发生改动,未加入暂存区,显示红色)

 

添加至暂存区

git add 文件名

插入暂存区后,再次查看状态

 

将暂存区的文件提交到本地库

git commit m "日志信息" 文件名

 

查看版本信息

git reflog

查看版本详细信息

git log

 

 

版本穿梭

git reset --hard 版本号

 

04-Git分支

  分支是什么?

  在一个项目生产过程中,为了方便更新,会有多个分支,支线A的项目上线后,为了后续版本更新,需要将这个项目放在B中继续开发。待B支线中的项目完善后,更新至支线A(在支线B中所做的操作不会影响支线A

  分支的好处!

 同时并行推进多个功能开发,提高开发效率。 各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败 的分支删除重新开始即可。

 

 分支的操作

 

 

 查看分支

git branch -v

 

 创建分支

git branch 分支名

 

 切换分支

git checkout 分支名

 

 

 合并分支

git merge 分支名

 例如在maset分支上合并hot-fix分支

 

如果两个合并的文件有冲突(合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。Git 无法替 我们决定使用哪一个。)

必须人为决定新代码的内容

 

05-远程仓库操作

 

查看当前所有远程地址别名

git remote -v

 增加远程地址别名

git remote add 别名 远程地址

 

推送本地分支到远程仓库

git push 别名 分支

 

克隆远程仓库到本地 ,clone会自动初始化本地仓库

git clone 远程地址

 

拉取远程仓库内容

git pull 远程仓库别名 远程分支名

 

06-IDEA集成Git

点击管理远程仓库,设置远程仓库地址

 

将项目添加到暂存区

 

 

 

将项目commit到本地仓库并且push到远程仓库

因为如果本地不commit的话,修改的纪录可能会丢失。
而有些修改当前是不需要同步至服务器的,所以什么时候同步过去由用户自己选择,什么时候需要同步再push到服务器

 

 

下面是我提交的gitee中的例子

 

 

除此之外,我们如果在gitee中更新了代码,可以pull gitee中的代码到IDEA中

 

修改代码执行顺序 : git commit -> git pull -> git push

假设A和B同时修改一个代码,在自己修改代码后提交到本地库。如果B比A更先改完,并且已经成功push后,A在pull时,两个人代码就会有冲突,A需要解决冲突,最后push

 

那个拐弯的就是B改的

 

 

左边是A改的,右边是B改的,中间是要解决冲突的

 

 

 

posted @   白蝶  阅读(62)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示