【基础篇】Git基本操作及IDEA操作Git

大家好,我是200,我又来了!

知识背景

问题:“在工作开发代码中,一个项目可能是由多个人去完成的,但是如果大家都在本地存放代码去开发的话,这种就可能会产生冲突,并且无法进行统一管理,导致开发困难。”

目前常用解决方案:SVN、Git

SVN:SVN是集中式管理工具,也就是说如果SVN挂了,就什么都做不了了,所以这就是集中式管理的弊端。

Git:Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。在项目内有一个Git仓库,也就是说每一个本地项目都有一个完整的Git仓库,所以即使断网的情况也不会影响提交代码,或某个人的git挂了,也不影响其他开发人员提交代码。

所以本文以Git进行展开讲解,如需了解SVN的使用可私信沟通了解

git图解

【基础篇】Git基本操作及IDEA操作Git_第1张图片 image-20210829045749033

Git实战

Git命令行操作

1.安装git

首先进入GitHub官网,下载适合自己电脑的版本正常安装就可以。可以选择安装路径。选项默认即可。 安装完成以后出现右键出现Git Bash Here

【基础篇】Git基本操作及IDEA操作Git_第2张图片 image-20210829034751825

2.登陆github,创建远程仓库

【基础篇】Git基本操作及IDEA操作Git_第3张图片 image-20210829034858032 【基础篇】Git基本操作及IDEA操作Git_第4张图片 image-20210829034926820

2.在桌面模拟创建一个项目

【基础篇】Git基本操作及IDEA操作Git_第5张图片 image-20210829045822815

在文件里右键选择Git Bash Here

【基础篇】Git基本操作及IDEA操作Git_第6张图片 image-20210829045852741
# 初始化仓库
git init

#
 添加文件到暂存区
git add

#
将暂存区内容添加到仓库中。
git commit
【基础篇】Git基本操作及IDEA操作Git_第7张图片 image-20210829035028196 【基础篇】Git基本操作及IDEA操作Git_第8张图片 image-20210829035117424

⚠️注意:上图出现报错的解决方式如下

#配置用户名
$ git config --global user.name 用户名

#
配置邮箱
$ git config --global user.email 邮箱地址

3.提交到远程仓库

#将本地文件添加到远程
git remote add origin https://github.com/wth19970830/hellogithub.git

#
上传到github
git push -u origin master

#
拉代码
git pull

⚠️由于命令提交代码每次都需要输入密码,所以如下做免密操作获取密钥

# 获取密钥
$ ssh-keygen -t rsa -C 邮箱地址
【基础篇】Git基本操作及IDEA操作Git_第9张图片 image-20210829035256060
上图可看到对应的密钥路径 已圈出

【基础篇】Git基本操作及IDEA操作Git_第10张图片 选择文件中id_rsa.pub中的内容复制到github

【基础篇】Git基本操作及IDEA操作Git_第11张图片 image-20210829045943110 【基础篇】Git基本操作及IDEA操作Git_第12张图片 image-20210829050008455

成功之后我们每次再运行 git push origin master命令无须再次输入密码要想实现免密提交代码,还有一点需要注意的就是,我们在使用git remote add 远程项目别名 远程项目地址命令的时候,要保证远程项目地址使用的是SSH协议而不是HTTPS协议

4.在github中删掉一个项目

【基础篇】Git基本操作及IDEA操作Git_第13张图片 image-20210829050051030

内容添加项目名确认一下

【基础篇】Git基本操作及IDEA操作Git_第14张图片 image-20210829050116421

IDEA操作git

1.创建web项目

【基础篇】Git基本操作及IDEA操作Git_第15张图片 image-20210829050156222

【基础篇】Git基本操作及IDEA操作Git_第16张图片 【基础篇】Git基本操作及IDEA操作Git_第17张图片 【基础篇】Git基本操作及IDEA操作Git_第18张图片 提交成功后,查看github并没有显示成功,而我们做的这部操作时将文件添加到了本地我们还需要进行push操作上传到远程

【基础篇】Git基本操作及IDEA操作Git_第19张图片 image-20210829050322339

直接点push就可以成功提交到远程仓库

【基础篇】Git基本操作及IDEA操作Git_第20张图片 image-20210829050355353

![image.png](https://upload-images.jianshu.io/upload_images/15607355-ff25131bebc0fc45.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240

【基础篇】Git基本操作及IDEA操作Git_第21张图片 image-20210829050438149 image-20210829050517274 image-20210829050517274

2.新增文件

如果整个项目提交在根目录进行上传

【基础篇】Git基本操作及IDEA操作Git_第22张图片 image-20210829050543514 【基础篇】Git基本操作及IDEA操作Git_第23张图片 image-20210829050601605

3.手动添加方式

【基础篇】Git基本操作及IDEA操作Git_第24张图片 image-20210829050747150

4.打开github上的项目

【基础篇】Git基本操作及IDEA操作Git_第25张图片 image-20210829051347795 【基础篇】Git基本操作及IDEA操作Git_第26张图片 image-20210829040718623

5.合作开发

【基础篇】Git基本操作及IDEA操作Git_第27张图片 image-20210829051405868

6.安装插件

【基础篇】Git基本操作及IDEA操作Git_第28张图片 image-20210829051432698

7.忽略文件插件

【基础篇】Git基本操作及IDEA操作Git_第29张图片 【基础篇】Git基本操作及IDEA操作Git_第30张图片 【基础篇】Git基本操作及IDEA操作Git_第31张图片

【基础篇】Git基本操作及IDEA操作Git_第32张图片 【基础篇】Git基本操作及IDEA操作Git_第33张图片

【基础篇】Git基本操作及IDEA操作Git_第34张图片 image-20210829051744723

8.pull失败

【基础篇】Git基本操作及IDEA操作Git_第35张图片 image-20210829051806080

解决:

【基础篇】Git基本操作及IDEA操作Git_第36张图片 image-20210829051829257 【基础篇】Git基本操作及IDEA操作Git_第37张图片 image-20210829051848773 【基础篇】Git基本操作及IDEA操作Git_第38张图片 image-20210829051902083

拿出每次提交的版本 【基础篇】Git基本操作及IDEA操作Git_第39张图片比如对这个版本感兴趣 【基础篇】Git基本操作及IDEA操作Git_第40张图片

image-20210829052036402 image-20210829052036402 【基础篇】Git基本操作及IDEA操作Git_第41张图片 image-20210829052053067

Git命令补充

1.远程拷贝

#拷贝一份远程仓库,也就是下载一个项目。
git clone [url]

2.查看仓库状态

# 查看仓库当前的状态,显示有变更的文件。
git status
git status -s #获取简短的输出结果

3.比较文件的不同,即暂存区和工作区的差异。

# 命令比较文件的不同,即比较文件在暂存区和工作区的差异。
# 命令显示已写入暂存区和已经被修改但尚未写入暂存区文件对区别。
git diff 
# 尚未缓存的改动
git diff
# 查看已缓存的改动
git diff --cached
# 查看已缓存的与未缓存的所有改动
git diff HEAD

4.回退版本

git reset [--soft | --mixed | --hard] [HEAD]

-mixed 为默认,可以不用带该参数,用于重置暂存区的文件与上一次的提交(commit)保持一致,工作区文件内容保持不变。

git reset  [HEAD] 

#
 实例
$ git reset HEAD^            # 回退所有内容到上一个版本  
$ git reset HEAD^ hello.php  # 回退 hello.php 文件的版本到上一个版本  
$ git  reset  052e           # 回退到指定版本

#
 --soft 参数用于回退到某个版本
git reset --soft HEAD

$
 git reset --soft HEAD~3 # 回退上上上一个版本
--hard 参数撤销工作区中所有未提交的修改内容,将暂存区与工作区都回到上一次版本,并删除之前的所有信息提交:
git reset --hard HEAD

$
 git reset –hard HEAD~3  # 回退上上上一个版本  
$ git reset –hard bae128  # 回退到某个版本回退点之前的所有信息。 
$ git reset --hard origin/master    # 将本地的状态回退到和远程的一样 

注意:谨慎使用 –hard 参数,它会删除回退点之前的所有信息。

HEAD 说明:

HEAD 表示当前版本

HEAD^ 上一个版本

HEAD^^ 上上一个版本

HEAD^^^ 上上上一个版本

以此类推...

可以使用 ~数字表示
HEAD~0 表示当前版本

HEAD~1 上一个版本

HEAD^2 上上一个版本

HEAD^3 上上上一个版本

以此类推

5.查看提交日志

git log

#
 查看历史记录的简洁的版本
$ git log --oneline

6.删除工作区文件

git rm 

下期预告

本期针对windows进行git讲解,下期将会针对Mac的git进行讲解,并补充本文中未涉及到的命令及实战,我们下期见喽~

你可能感兴趣的:(基础学习篇,git,idea,svn)