Git安装+命令练习+idea集成+Git冲突解决

目录

安装

常用命令

git add将文件提交到暂存区

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

git status 查看状态

git log查看日志

git reset --hard [索引]:前进或者后退历史版本

git diff 文件名:将工作区中的文件和暂存区中的文件进行比较

git branch -v 查看分支

github创建远程库

 git clone克隆

git push 推送

 git fetch抓取

制造冲突

SSH免密登录

 Idea集成Git

 commit提交到工作区

 从远程库拉取

 推送去远程库

idea中进行推送

从远程库克隆项目

在idea中制造冲突并解决


安装

git下载地址Git - Downloading Package

下载过程会比较慢

安装

 

 

鼠标右击Git bash here 打开终端

 

查看git版本号

设置签名

git config --global user.name"josie"

 设置邮箱

 git config --global user.email"josie@163.com"

 本地仓库的初始化

先创建本地仓库

 默认是没有.git目录的

执行git init生成.git目录

 

常用命令

添加文件add,提交文件commit

先创建一个文件demo.txt

git add将文件提交到暂存区

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

碰到不能识别时可以去config文件里添加user

 git status 查看状态

demo2.txt并没有提交所以是红色的

提交后再次查看状态

 修改demo2.txt中的内容然后查看状态,提示文件被改动

 

 git log查看日志

 当历史记录过多时,下一页:空格,上一页:b,到尾页显示END

git log --pretty=oneline

git relog

 git reset --hard [索引]:前进或者后退历史版本

通过指针进行移动,本地库的指针移动的同时,重置暂存区,重置工作区

git reset --mixed [索引]

 本地库指针移动的同时,重置暂存区,工作区不动

git reset --soft [索引]

本地库指针移动的时候,暂存区和工作区不动

rm删除

先删除工作区中的文件

 再同步到暂存区,再同步到本地库

 文件已经被删除

 

 找回本地库删除文件,进行版本回退

git diff 文件名:将工作区中的文件和暂存区中的文件进行比较

 $ git diff 51c973b test3.txt  通过索引比较

 

$ git diff HEAD test3.txt 通过HEAD比较

 分支

git branch -v 查看分支

在哪个分支上是通过*来显示

 git branch branch01创建分支

 git checkout 切换分支

 branch01中修改内容后版本号发生改变

 将branch01中的内容合并到主分支

先进入主分支,再merge

 出现冲突

 解决冲突

不带文件名commit

 可以看到(master|MERGING)变成了(master)

github创建远程库

 https://github.com/josielucky/josierepository1.git

远程库地址比较长,可以起别名通过别名访问

$ git remote add origin https://github.com/josielucky/josierepository1.git

 推送时弹出GitHub账号登录

 

 查看远程库

 git clone克隆

远程库内容已经到了本地

 

另一个用户提交时需要重新添加账户信息

 

git push 推送

 git fetch抓取

将远程库内容下载到本地,但是工作区的文件并没有更新

 合并

切换去远程master,查看文件后没问题就就切回本地master,然后苯丙

git

git fetch是为了保险起见,先去查看,git  pull是直接拉取

制造冲突

Josie提交test5.txt

 josie2拉取

 操作同一个文件的同一个位置,会造成冲突

Josie2首先更新test5.txt文件内容,然后push

 

 josie也改动test5.txt中的内容并push

 推送失败

 解决冲突

先拉取修改冲突,然后推送

 

找到冲突

 删除不要的内容

再次提交并推送

 

SSH免密登录

执行命令生成.ssh目录

ssh-keygen -t rsa -C  xxxxxxx@126.com

 本地生成.ssh目录,找到id_rsa.pub文件复制

 打开GitHub->settings->SSH and GPG keys->New SSH key,将复制到的字符粘贴到key中

 

 设置ssh别名

将github中的ssh复制并执行

$ git remote add origin_ssh git@github.com:josielucky/josierepository1.git

$ git remote -v

 使用ssh别名push

 Idea集成Git

 完成本地的库的初始化操作

生成了.git目录

 创建类会提示是否提交到git

 add之后会变成绿色,添加到了暂存区

 commit提交到工作区

此时跟新代码,前面会出现绿色说明跟工作区出现不同

再次提交

从远程库拉取

$ git pull git@github.com:josielucky/webauto.git master --allow-unrelated-histories

 推送去远程库

$ git push -u git@github.com:josielucky/webauto.git master -f

 到这里远程库和本地库就可以进行交互了

idea中进行推送

添加一个类add-commit-push

 

 

 

一般情况下要先进行pull操作再进行push

从远程库克隆项目

 在idea中制造冲突并解决

先在本地某一个工作区修改提交代码

 

 

idea中修改并push

 push时有冲突遇到合并提示

解决冲突

 merge之后查看不同的地方,拖拽需要的代码

 apply之后

 增加的内容已经跟新了

再次push

 

避免冲突:

团队中避免在同一个文件中修改代码

在修改文件前,push之前先进行pull操作

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值