首页 > 其他分享 >IDEA 使用Git图文详解(学好idea操作git大全)

IDEA 使用Git图文详解(学好idea操作git大全)

时间:2023-03-20 11:03:32浏览次数:43  
标签:文件 Git 代码 idea git 冲突 提交 分支

IDEA 使用Git图文详解(学好idea操作git大全)

一、配置git

img

img

二,项目到远程仓库

新建本地仓库

img

将需要上传的文件项目右击,git === add

添加到git仓库,文件名为绿色

img

然后commit项目,提交项目,这里是先提交带本地仓库

push到线上仓库

img

提交项目到gitee报错Push to origin/master was rejected的解决办法

这个问题比较常见了,一般是在第一次上传项目到github或者gitee上会出现。

以前将项目上传到github的时候出现这个问题,百般查找,找到一个好用的解决办法,在项目文件夹下依次输入以下命令:

git pull

git pull origin master

git pull origin master --allow-unrelated-histories

git push -u origin master -f

然后再push,就可以了.

三,检出项目到本地

img

img

四,处理冲突( git在idea中的冲突解决(非常重要)

1.什么是冲突

  冲突是指当你在提交或者更新代码时被合并的文件与当前文件不一致。读起来有点绕,结合下面的案例理解。

  从上面对冲突的定义来看,冲突时发生在同一个文件上的。

2.生产上冲突的场景

  常见冲突的生产场景如下

  1. 更新代码
  2. 提交代码
  3. 多个分支代码合并到一个分支时
  4. 多个分支向同一个远端分支推送代码时

  git的合并中产生冲突的具体情况:
   两个开发者(分支中)修改了同一个文件(不管什么地方)
   两个开发者(分支中)修改了同一个文件的名称
  注意:两个分支中分别修改了不同文件中的部分,不会产生冲突,可以直接将两部分合并。

  总结:上面各种情况的本质都是,当前文件与合并文件不一致,因此不论哪种情况其解决冲突的方法是一样的。

3.idea中解决冲突

假如 01号程序员先上传文件conflict.txt,并继续在conflict.txt上写代码;

02号程序员更新项目代码,并在conflict.txt上写代码,写完后,在提交到远程服务端;

当01号程序员把写完后,准备提交代码了,这时的正规操作手法,先更新在提交,但是在更新的时候必然会冲突,

因为这时候更新的代码conflict.txt与本地仓库代码conflict.txt不一致

解决方案如下:

accept yours:代表以自己的为准;

accept theris:代表以更新下来的文件为准;

merge:代表手动合并

一般解决冲突我们都是选择merge

img

将需要的内容点击:">>"既可以合并内容到result中,不需要的内容点击“x”即可,合并完成后点击apply即可。

  值得注意的是,最将所有的“x >>”符号都要处理完,不需要的点击“x”,需要的点击“>>”

  最后,不论是什么场景下产生的冲突解决方法是一样的。

4.关于冲突的个人心得

  多人协作开发的时候,如果出现了你没有改过的文件跟你冲突了,一定要去找到当事者,说清楚是如何冲突的;

  然后协商解决,千万不要擅自拉别的分支去试图解决冲突,或找文件覆盖,更或者以自己的文件为准.

  同时记住,解决了之后,要add 和 commit 最后push.为保证万无一失,最后在冲突都解决之后,重启项目;

  保证至少不会有立即奔溃的现象发生.然后才去提交,push.

  提交的时候,一定要保持清醒,先搞清楚自己要提交的文件之间的关系,然后再提交,这样才不会有文件缺失的问题,造成奔溃.

  如果任务比较多,又开了多个分支,分别进行开发,再次强调,一定要清楚自己在各个分支上做了什么,自己要提交的是什么.最好是能做个详细的笔记,没有把握宁愿不要去提交到生产服务器.

五,IDEA Git 分支branch操作,新建和合并

1:创建分支

img

点击branches

img

img

idea右下角便会有分支信息

img

此时提交代码及push远程代码只是提交到了分支上

此时其他人员便可以从远程上拉取分支代码了

可以多建立几个分支,分别创建分支各自的文件,进行提交,然后开始merge的操作。
2: 不同分支merge操作
然后切换分支,到master

img

然后选择要合并的项目进行merge操作

img

然后就会发现有冲突的文件进行合并,不冲突的直接更改或者新增

六,实现项目回滚

首先我们要回滚的项目右键,如下:

img

然后你会看到这个项目提交记录

img

3、选择你要回滚的地方,然后右键,如下:

img

拷贝出一串字符串

feb9283cd08201c9fc9da5113ff2f2c7d91ad93a

然后再次右击项目

img

img 把刚才一串字符黏贴上即可

解决IDEA配置.gitignore不生效的问题

img

原因:
.gitignore只能忽略未被track的文件,而git本地缓存。如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。

解决:
解决方法就是先把本地缓存删除(改变成未track状态),然后再提交。使用以下几个命令即可快速解决

注意:以下命令需要在你项目中右键点击 Git Bash Here进行命令窗口输入
git rm -r --cached .
git add .
git commit -m 'update .gitignore'

img

然后重新回到IDEA提交,多余的文件就会消失啦~~~

标签:文件,Git,代码,idea,git,冲突,提交,分支
From: https://www.cnblogs.com/little-monster-lhq/p/17235548.html

相关文章

  • Git 和 Svn 代码提交 注释编写规范
    #模板gitcommit-m'feat:登录校验'类型说明feat添加新功能fix修复bugdocs修改文档style修改样式,不影响业务代码refactor重构(既不是新增功能,也不是修改bug的代码变动)p......
  • vscode的Git History,GitLens — Git supercharged插件
    Gitsupercharged插件GitSupercharged插件是一个可以扩展和增强您的Git操作的VisualStudioCode插件。它提供了一系列实用工具,使得在VSCode中管理和使用Git变得更加高......
  • git 冲突: Please, commit your changes or stash them before you can merge. git sta
    场景:其实这种冲突是甲乙两个人或多人进行开发同一个组件,但是某个人提前提交了代码,当另一个人进行提交代码的时候去gitpull的时候,就会报如下。主题上述描述的场景,俩人开发同......
  • Git 工作流程以及常用命令
    Git工作流程以上包括一些简单而常用的命令,但是先不关心这些,先来了解下面这4个专有名词。Workspace:工作区Index/Stage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库工作......
  • 版本管理工具git介绍与使用
    Git简介Git是一个分布式版本控制系统,它可以跟踪文件的变化并记录每个版本的修改历史。Git的原理是将文件的变化记录在一个称为“仓库”的地方,并允许用户在不同的分支上进......
  • Vue插件:Vue-resource github搜索示例
     1:安装插件  vue-resourcevue的插件库,在vue1.0年代使用几率很高......
  • 玩转Git三剑客笔记
    推荐教程学习git系列教程:https://github.com/xirong/my-git实践练习进行对Git学习:https://learngitbranching.js.org/?locale=zh_CN第一章:Git基础(13讲)01|......
  • Cursor和GitHub Copilot
    Cursor和GitHubCopilot都是基于GPT的代码生成器,但是有一些区别。Cursor是一个独立的IDE,可以让你用自然语言和GPT交流,生成和修改代码。GitHubCopilot是一个VSCode的插件......
  • 【转】eclipse git 冲突解决
    一、冲突的产生  提交至本地库是没有任何问题的,但在推送至远程库时,后推送的就会因为冲突推送失败:1、推送 2、推送失败图示: 二、冲突的解决 ①在后推送的项目......
  • Git06-提交
    在Git中,提交(commit)是用来记录版本库的变更的。当提交时,Git会记录索引的快照并把快照放进对象库。这个快照不包含该索引中任何文件或目录的副本,因为这样的策略会需要......