Git简介、常用命令介绍、远程仓库、ignore文件、idea中git使用

5 篇文章 0 订阅
4 篇文章 0 订阅

一、Git简介

Git 是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目;易于学习,占地面积小,性能极快; 并且具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。 性能优于 Subversion、 CVS、 Perforce 和 ClearCase 等版本控制工具。

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

分布式版本控制与集中式版本控制
a、集中式版本控制工具
集中式版本控制系统诸如 CVS、 SVN 等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。多年以来,这已成为版本控制系统的标准做法。

这种做法带来了许多好处,每个人都可以在一定程度上看到项目中的其他人正在做些什么。而管理员也可以轻松掌控每个开发者的权限,并且管理一个集中化的版本控制系统, 要远比在各个客户端上维护本地数据库来得轻松容易。

但是这么做显而易见的缺点是中央服务器的单点故障。如果服务器宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。

b、分布式版本控制
比如:Git、 Mercurial、 Bazaar、 Darcs等等
像 Git 这种分布式版本控制工具,客户端提取的不是最新版本的文件快照,而是把代码仓库完整地镜像下来(本地库)。这样任何一处协同工作用的文件发生故障,事后都可以用其他客户端的本地仓库进行恢复。因为每个客户端的每一次文件提取操作,实际上都是一次对整个文件仓库的完整备份。主要解决了集中式版本控制单点故障的问题:
1、服务器断网的情况下也可以进行开发(因为版本控制是在本地进行的)
2、每个客户端保存的也都是整个完整的项目(包含历史记录, 更加安全)

工作机制和代码托管中心
a、工作机制
工作区:本地写代码的目录,如idea中某个项目所在的文件夹
暂存区:临时存储,将修改好的文件存储在暂存区
本地库:历史版本,将暂存区中的文件提交到本地库生成历史记录
远程库:指定人员可共享,将本地库中的记录推送到远程仓库,如:码云、GitHub、gitLab

工作区中写好的代码通过 git add 命令存储到暂存区中,再通过 git commit 命令将暂存区中的文件提交到本地库生成版本记录,再通过 git push 命令将本地库中的记录推送到远程库中。

b、代码托管中心
基于网络服务器的远程代码仓库,一般简单称为远程库。
局域网:GitLab
互联网:GitHub(外网)、Gitee 码云(国内网站)

git下载安装
git官网下载地址
在这里插入图片描述
git历史版本下载地址
下载好之后,双击安装包,选择安装目录之后,基本就是一直下一步即可。

设置用户签名
签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁做的。 Git 首次安装必须设置一下用户签名,否则无法提交代码。
注意: 这里设置用户签名和登录 GitHub(或其他代码托管中心)的账号没有任何关系。

命令作用
git config --global user.name 用户名设置用户签名
git config --global user.email 邮箱设置用户email地址(邮箱地址没做验证可以是假地址)
cat ~/.gitconfig查看设置的用户签名信息

以上设置用户名和邮箱的命令是 global 级别的,会全局生效;也就是设置之后以后使用该 git 关联其他项目时,不需要再设置用户签名。
在这里插入图片描述

二、git常用命令

git基本使用
Git 切换版本, 底层是移动的 HEAD 指针。

命令作用
git init初始化本地库
git status查看本地库状态
git add 文件名/.将某个文件或当前目录下所有文件添加到暂存区
git commit -m “日志信息” [文件名/.]将暂存区某个文件或暂存区所有文件提交到本地库
git reflog查看本地库版本记录-简略信息,所有分支的记录包含被删除的 commit 记录和 reset操作也可查看,可以通过这些被删除的版本信息进行恢复删除的版本
git log查看本地库版本记录-详细信息,只显示当前分支指针指向的版本及之前的版本(被删除的 commit 记录和 reset操作不会显示),可以通过–pretty=oneline/–oneline(–oneline显示记录和–pretty=oneline一样,但是提交记录的hash值(版本号)只显示前7位)参数简化信息
git log/reflog --follow 文件名查看当前分支本地库中指定文件的版本记录
git log --graph查看当前分支版本记录(和git log一样,并且会多显示分支合并图信息)
git reset --hard 版本号版本穿梭即可前进后退版本-调整HEAD指针指向某个历史版本,暂存区和工作区内容同步变化,版本号只需要简要的前7位即可
git reset --hard HEAD^只能后退版本,几个 ^ 表示后退几个版本,比如这里是一个 ^ 表示后退一个版本,也就是HEAD指针移动到上个版本 ;如果没有 ^ 则相当于回退0个版本,移动HEAD指针指向当前版本
git reset --hard HEAD~n只能后退版本,n是几就表示后退几个版本,比如 git reset --hard HEAD~2 表示后退两个版本或者 git reset --hard HEAD^^ 或者 git reset --hard 对应版本号
git diff 文件名比较当前分支工作区中某个文件和暂存区中该文件的区别
git diff 版本号1 版本号2比较两个版本的区别,版本号只需要前面7位即可
git checkout – 文件名撤销某个文件工作区中的修改(工作区后悔药)-只能撤销某个文件还停留在工作区中的修改,一旦 git add则无法撤销需要先从暂存区中撤回才行
git rm --cached 文件名将文件从暂存区中移除(add后悔药)-对于暂存区来说记录的是该文件被删除,以及该文件未被跟踪;和 git reset HEAD 文件名 命令一样都可以通过 git add 再次提交到暂存区中,git add 操作撤销建议使用 git reset HEAD 文件名 命令
git reset HEAD 文件名将文件从暂存区中撤回(add后悔药)-对于暂存区来说就和只修改了工作区中该文件而未进行git add操作一样的状态
git commit --amend修改上次git commit操作的备注信息,会显示出上次提交的备注信息,然后和vim操作一样编辑保存备注信息即可
git revert 版本号和 git reset --hard 版本号 类似,版本号只需要前面7位即可,同样都会把工作区和暂存区进行回退到某个版本,但是HEAD指针未移动
git tag [-a] 标签名 [ -m “标签附注”]为本地库最后一次commit操作的版本添加标签;-a参数可选,可通过-a参数为标签添加附注,同样是vim操作一样编辑保存标签附注即可, -m “标签附注” 可选,与 -a 配合使用,加了-a参数不加 -m “标签附注” 的话通过vim的形式添加附注,加了 -m “标签附注” 的话,可以直接指定附注;
git tag [-a] 标签名 版本号 [ -m “标签附注”]为本地库指定版本添加标签,版本号只需要前面7位即可;-a参数可选,可通过-a参数为标签添加附注,同样是vim操作一样编辑保存标签附注即可, -m “标签附注” 可选,与 -a 配合使用,加了-a参数不加 -m “标签附注” 的话通过vim的形式添加附注,加了 -m “标签附注” 的话,可以直接指定附注;
git tag -d 标签名删除本地库某个标签
git tag查看本地库所有标签
git show 版本号查看某个版本的commit内容,版本号只需要前面7位即可
git show 标签名查看某个标签信息和该标签对应的commit信息

标签主要作用是为某个节点的版本做标记,比如项目开发完成了1.0版本,那么此时如果仅仅只是通过记录开发完成1.0版本时的commit版本号的话不方便且不容易识别;此时就可以为完成1.0版本的这次commit打上标签,以便后期方便查找,建议使用 git tag -a 进行添加标签,因为可以为标签添加附注信息(附注信息中会记录添加标签的时间、用户签名、以及用户添加的该标签备注信息);

git reset 命令说明(下面三个参数都会移动本地库HEAD指针):
git reset --soft:仅仅移动本地库HEAD指针,暂存区和工作区内容不变,所以查看status时,状态是add的状态(HEAD指针之后的修改)
git reset --mixed:移动本地库HEAD指针及修改暂存区,所以查看status时,状态是没有add的状态(HEAD指针之后的修改)
git reset --hard:移动本地库HEAD指针及修改暂存区和工作区即暂存区和工作区中的内容会同步变化,这个参数用的最多,因为工作区和暂存区同步进行了变化,所以查看status时,状态是未作任何修改的状态

git log等查看记录的命令,提交记录较多会分为多屏/页显示,空格键 向下翻页、b键 向上翻页、q键 退出翻页。

git init和git status
在这里插入图片描述
git add和git rm --cached 文件名
在这里插入图片描述
git commit -m “日志信息” 文件名、git reflog、git log
在这里插入图片描述
git reset --hard 版本号
在这里插入图片描述
git log与git reflog区别
在这里插入图片描述
git分支操作
分支:在版本控制过程中,同时推进多个任务,我们就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来, 开发自己分支的时候,不会影响主线分支的运行(分支底层也是指针的引用);所以使用分支的好处在于:
a、同时并行推进多个功能开发,提高开发效率。
b、各个分支在开发过程中,如果某个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。

常用命令

命令作用
git branch查看所有分支
git branch 分支名创建分支
git branch -v查看所有分支,相比较于 git branch 会多显示每个分支的最后一次提交信息
git checkout 分支名切换到某分支
git merge 分支名把指定的分支合并到当前分支上
git branch -d 分支名删除某个分支
git diff 分支一 分支二比较两个分支本地库的区别

git branch -v、git branch 分支名、git checkout 分支名
在这里插入图片描述
git merge 分支名(正常合并-未有冲突)
在这里插入图片描述
git merge 分支名(冲突合并-即被合并的分支和当前分支都对某个文件做了修改)
在这里插入图片描述
在这里插入图片描述
HEAD指针指向某个分支,然后分支的指针指向该分支的某个版本,实现分支的版本控制和分支的切换。
总结:
a、当合并的两个分支在同一个文件的同一个位置有两套完全不同的修改。 Git 无法替我们决定使用哪一个分支的版本,就会合并分支失败,就需要人为决定新代码内容。
b、手动解决冲突之后,需要按照正常的提交流程进行提交冲突的文件,但是commit的时候不能带有文件名或 . 只能是git commit -m “日志信息”
c、使用 git branch 分支名 创建分支的时候,新创建的分支内容和当前分支创建新分支的时候的内容一致(比如在master上创建dev那么dev的内容和在master上创建dev的时候,master的分支内容一致),后面每个分支的开发互不影响,并且除了merge操作之外,分支内容不会同步

三、远程仓库

前面的操作都是在本机上的操作,仅仅是对暂存区和本地仓库的操作;使用git还有一个目的就是能够让自己编写好的代码可以让其他人获取到,自己也能获取到其他人的修改;所以需要一个大家可以随时拉取推送代码的地方,也就是远程仓库。
常用命令

命令作用
git remote -v查看当前仓库添加的所有远程地址别名
git remote add 别名 远程仓库地址为某个远程仓库地址起一个别名,以后可以通过该别名操作该远程仓库
git push 远程仓库地址/远程仓库地址别名 本地仓库分支名推送本地某个分支的内容到远程仓库
git clone 远程仓库地址/远程仓库地址别名将远程仓库的内容克隆到本地(克隆远程仓库当时所有的内容并非只有某个分支的内容)
git pull 远程仓库地址/远程仓库地址别名 远程仓库分支名拉取远程仓库对应分支最新内容并且与本地对应分支直接合并
git push 远程仓库地址/远程仓库地址别名 --tags推送本地库所有标签到远程库

不论是GitHub、gitee、gitlab远程仓库,因为Push、Pull、clone等命令是git客户端的命令所以操作都一样(Git Bash Here和idea中都一样的);只是远程仓库网页上的操作可能不一样。
1、Github
GitHub官网

GitHub创建远程仓库
这里登录或注册使用的邮箱必须是一个真实的可正常使用的邮箱,也是将来使用GitHub远程仓库时,使用https的仓库地址时需要的邮箱和密码,和之前本地设置git用户签名的用户名和邮箱没有关系。
在这里插入图片描述
登录之后点击右上角的 “+” --> “New repository”,创建远程仓库。
在这里插入图片描述
填写远程仓库信息
在这里插入图片描述
创建好后如下
在这里插入图片描述
操作GitHub远程仓库
git remote -v、git remote add 别名 远程仓库地址(远程仓库地址是上面提到的https和ssh的地址,两个都可以)
在这里插入图片描述
git push 远程仓库地址/远程仓库地址别名 本地仓库分支名,设置了别名之后,git命令中关于该远程仓库的地址部分都可以使用别名代替,正常来说下面的命令可以将本地仓库的master分支的内容推送到远程仓库中;但是提示报错,报错意思是:密码认证已于2021年8月13日被移除。请使用个人访问令牌代替。也就是2021年8月13日之后操作GitHub远程仓库就不能使用账号密码进行访问了,需要使用个人令牌(Token)进行访问或者使用SSH公钥模式进行访问;即使用HTTPS的地址的话需要使用Token访问或者使用远程仓库SSH地址配合SSH公私钥进行访问;这里采用SSH地址访问,因为在项目中该方式使用最多。
在这里插入图片描述
生成本地git的SSH公私钥

生成公私钥:ssh-keygen -t rsa -C "你的邮箱"    需要三次回车确认;其中邮箱和Github账号的邮箱没有关系,可以是一个假的邮箱
查看公钥:cat ~/.ssh/id_rsa.pub 

在远程仓库中配置SSH公钥,有两个地方可以配置
a、在每个远程仓库的settings中设置-该设置只对当前仓库生效即只对当前仓库具有读写权限
在这里插入图片描述
b、在用户的settings中设置-该设置对该用户的所有仓库都生效即对该用户的所有仓库都具有读写权限
在这里插入图片描述
正常来说可以添加成功,然后就可以对该远程仓库进行推送拉取操作。

添加公钥可能出现下面的问题:
提示密钥已被使用-原因是设置的这个公钥已在GitHub其他的远程仓库中配置了,因为一个键作为部署的ssh key使用只能绑定一个仓库。
在这里插入图片描述
找出该公钥已被哪个远程仓库使用-这里是test

ssh -T -ai ~/.ssh/id_rsa git@github.com

在这里插入图片描述
解决方案一:
删除test远程仓库中设置的这个SSH公钥,然后统一在用户的settings中设置SSH公钥,这样既保证了原来test远程仓库的正常使用也保证了新的远程仓库可以使用。
在这里插入图片描述
解决方案二:
另外生成一个SSH公私钥对,然后设置在对应远程仓库的settings中或用户的settings中

设置完成SSH公钥时候,再次push,因为前面提到HTTPS的地址使用账号密码的模式push代码已被移除,所以这里只能使用SSH的地址push(因为没有为SSH的地址添加别名,所以这里使用了SSH的地址)
在这里插入图片描述
对应GitHub远程仓库中已有本地仓库中master分支的内容
在这里插入图片描述
团队内协作
同样的操作配置团队内其他人员的SSH公钥之后,他们就可以先将远程仓库已有的代码使用远程仓库的SSH地址进行clone操作,然后编写代码之后进行拉取推送操作了。

git clone 远程仓库地址/远程仓库地址别名
在这里插入图片描述
clone操作git会拉取代码、初始化本地仓库、创建别名(统一别名为origin)

git pull 远程仓库地址/远程仓库地址别名 远程仓库分支名-拉取远程仓库的代码
在这里插入图片描述
团队外协作
对于本团队内的人员可以直接在远程仓库中设置他们的SSH公钥即可,但是团队外人员不能将他们的SSH公钥设置在远程仓库中,那么需要他们也能进行开发以及合并他们开发的代码需要如下操作:

团队外人员操作
a、将该远程仓库的HTTPS的地址或该远程仓库的浏览器上的地址发送给团队外人员,团队外人员在浏览器中访问该地址,然后Fork操作将该远程仓库叉到自己的GitHub远程仓库中。
在这里插入图片描述
在这里插入图片描述
Fork完成后团队外人员可在自己的GitHub账号中看到刚刚Fork的远程仓库
在这里插入图片描述
此时因为团队外人员自己的GitHub账号中已有该远程仓库,那么就相当于执行团队内人员的开发逻辑进行开发代码即可。
b、团队外人员开发完毕后,在团队外人员自己的GitHub账号Fork过来的这个远程仓库中操作 Pull requests,请求该远程仓库的原本创建者合并团队外人员开发的代码。
在这里插入图片描述
在这里插入图片描述
确认修改的内容
在这里插入图片描述
在这里插入图片描述
提交成功
在这里插入图片描述
远程仓库原本创建者操作
查看该远程仓库的原本创建者的该远程仓库信息-有一个Pull requests请求
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击 Merge pull request
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
到此完成团队外人员对该远程仓库代码的开发及合并操作。

2、gitee 码云
gitee官网
码云是开源中国推出的基于 Git 的代码托管服务中心 ,是一个中文网站,使用方式跟 GitHub 一样;因为 GitHub 服务器在国外, 使用 GitHub 作为项目托管网站,如果网速不好的话,严重影响使用体验,甚至会出现登录不上的情况。所以可以使用国内的项目托管网站-码云;中文版的GitHub,操作方式和GitHub高度相似、几乎一样。
在这里插入图片描述
创建远程仓库
在这里插入图片描述
在这里插入图片描述
设置SSH公钥
每个项目单独设置
在这里插入图片描述
用户下全局设置

在这里插入图片描述
需要密码验证
在这里插入图片描述
复制SSH地址
在这里插入图片描述
相比GitHub多出的重要功能就是导入仓库
在这里插入图片描述
在这里插入图片描述
会将该远程仓库拷贝一份到gitee中
在这里插入图片描述
在这里插入图片描述
3、gitlab
GitLab 由 GitLab Inc.开发,使用 MIT 许可证的基于网络的 Git 仓库管理工具,且具有wiki 和 issue 跟踪功能。使用 Git 作为代码管理工具,并在此基础上搭建起来的 web 服务(可搭建局域网Git仓库);使用 Ruby 语言写成。后来,一些部分用 Go 语言重写。截止 2018 年 5 月,该公司约有 290 名团队成员,以及 2000 多名开源贡献者。 GitLab 被 IBM, Sony, JülichResearchCenter, NASA, Alibaba,Invincea, O’ReillyMedia, Leibniz-Rechenzentrum(LRZ), CERN, SpaceX 等组织使用;使用gitLab最重要的就是可在私服上面搭建远程仓库,这样代码存在私服上,而非公网上。
gitLab官网
gitLab中文官网

Linux安装gitLab远程仓库

创建远程仓库:
在这里插入图片描述
或者
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
设置SSH公钥:
在这里插入图片描述
在这里插入图片描述

四、ignore文件

ignore文件即忽略文件,使用git作为项目版本控制的时候,我们只需要让git帮我们管理我们的代码文件或者配置文件这些和项目功能相关的文件即可;而对于一些和项目功能无关的文件并不需要git管理,并且这些文件被管理之后可能会因为开发人员本地开发工具的不同导致错误产生,所以需要配置ignore文件让git忽略这些文件的管理;比如idea中的iml、.idea等文件,eclipse中的.classpath、.project等文件,maven生成的jar包、war包等文件都不需要git管理。

ignore文件配置
文件内容是忽略什么文件就写什么文件的配置即可,其中 ! 开头的配置表示取反,也就是这些文件不忽略(目的是防止ignore文件中配置的忽略某些目录下的内容,但是这些目录下的某些文件需要git管理);

HELP.md
target/

# Compiled class file
*.class

# Log file
*.log

# BlueJ files
*.ctxt

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/

### VS Code ###
.vscode/

!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**
!**/src/test/**

五、idea中git使用

idea中除了git clone方式拉取的项目外,都是没有使用git管理的。

将项目交给git管理
a、为项目设置git信息
File->Settings->搜索git->选中到git的可执行文件
在这里插入图片描述
在这里插入图片描述
b、在项目根目录编写.gitignore文件(必须是这个名称)
项目名称右键->new->File
在这里插入图片描述
在这里插入图片描述
在.gitignore文件中编写内容,可以直接使用上面的ignore文件的内容。

c、初始化git相当于执行git init命令,会在项目的根目录下生成.git隐藏文件(因为配置了.gitignore文件,会自动忽略不需要git跟踪的文件,也就是从这里开始就不会对忽略的文件进行管理了比如标记为红色表示未被跟踪即未提价到暂存区中,标记为绿色表示未提交到本地库中)
在这里插入图片描述
选择要初始化git的目录即选中当前项目所在目录-默认就是选中的该目录
在这里插入图片描述
在这里插入图片描述
d、添加到暂存区
项目名称右键->Git->Add(可以右键某个文件同样的操作,则只是将该文件提交到暂存区中,项目名称右键则会将该项目下所有文件都提交到暂存区中)
在这里插入图片描述
在这里插入图片描述
e、提交到本地仓库中
项目名称右键->Git->Commit Directory
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

添加到暂存区和提交到本地库快捷方式
在这里插入图片描述

版本切换
查看所有版本信息
在这里插入图片描述
选中要切换的版本右键->Checkout Revision即可
在这里插入图片描述
在这里插入图片描述
创建分支
点击idea右下角,图中框出来的地方
在这里插入图片描述
在这里插入图片描述
输入新分支的名称
在这里插入图片描述
创建好分支后idea会自动切换到新分支上
在这里插入图片描述
切换分支
在这里插入图片描述
合并分支
当前在master分支上将dev合并到当前分支即将dev合并到master上,正常没冲突的情况下可直接进行合并
在这里插入图片描述
有冲突的情况下弹出提示框
在这里插入图片描述
在这里插入图片描述
将所有冲突文件Merge完成后,还需要将所有冲突的文件提交到本地仓库中。
以上是当我们开发的项目想要让git管理时的本地基础操作。

idea中项目上传到GitHub中
同样采用常用的SSH地址上传,在 三、远程仓库 中操作时,密码认证已于2021年8月13日被移除。请使用个人访问令牌代替;然后配置了项目中常用的方式SSH公钥模式访问,上面配置过公钥此处就不配置了(前提是配置的账号下的SSH公钥),按照 三、远程仓库 中的方式创建一个GitHub的远程仓库。
在这里插入图片描述
复制仓库SSH地址
在这里插入图片描述
项目名称右键(或任何一个文件右键、或任何一个打开的文件右键)->Git->Repository->Push
在这里插入图片描述
弹窗中填入远程仓库地址
在这里插入图片描述
点击Push
在这里插入图片描述
刷新远程仓库,代码已被提交到远程仓库中
在这里插入图片描述
本地切换到dev分支,同样的方式Push,可将dev分支也推送到GitHub远程仓库中(因为已经添加过远程仓库地址,所以可以直接Push不用添加远程仓库地址)
在这里插入图片描述
刷新远程仓库
在这里插入图片描述
上面的上传项目到GitHub远程仓库中,采用的Push的方式实现;所以Push代码和上面的操作一样。

idea Pull操作
项目名称右键(或任何一个文件右键、或任何一个打开的文件右键)->Git->Repository->Pull
在这里插入图片描述
在这里插入图片描述
Pull快捷方式
在这里插入图片描述
注意: Push 操作将本地库代码推送到远程库,如果本地库代码跟远程库代码版本不一致,push 操作会被拒绝。必须要保证本地库的版本比远程库的版本高,才能够Push成功,所以每次开发代码之前,必须先Pull操作,将本地库代码更新为远程库版本一样的代码,然后修改代码本地提交再Push操作;如果遇到团队内其他成员先Push那么自己Push之前先进行Pull,如果遇到代码冲突idea则会弹出提示框进行合并代码,然后再Push操作,如下:
Push操作遇到冲突弹出提示框
在这里插入图片描述
手动解决冲突
在这里插入图片描述
再次Push
在这里插入图片描述
idea中clone远程仓库
如果idea已经打开项目则 File->New->Project from Version Control->Git
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值