4.1JavaEE-工具

目录

4.1.1 Maven

 4.1.2 Git

4.1.2.1 Git概述 

4.1.2.2 Git仓库

4.1.2.2.1 本地仓库

 4.1.2.2.2 远程仓库

4.1.2.3 工作区、版本库、暂存区、文件状态

4.1.2.3.1 工作区

4.1.2.3.2 版本库

 4.1.2.3.3 暂存区

 4.1.2.3.4 文件状态

4.1.2.4 本地仓库指令

4.1.2.5 远程仓库指令

4.1.2.6 添加忽略文件

4.1.2.7 分支

4.1.2.8 IDEA中Git项目协作开发


4.1.1 Maven

Maven:项目构建、jar包管理工具 

待更新

 4.1.2 Git

4.1.2.1 Git概述 

Git:分布式版本控制系统(Distributed Version Control System,简称 DVCS),分布式版本管理工具。

分为两种类型的仓库:

  1. 本地仓库:是在开发人员自己电脑上的Git仓库
  2. 远程仓库:是在远程服务器上的Git仓库

4.1.2.2 Git仓库

Git获取仓库有两种方式:

  1. 本地初始化仓库
  2. 远程克隆仓库

4.1.2.2.1 本地仓库

在计算机的任意地方创建一个文件夹(本例在桌面创建git文件夹)

 进入git文件夹,右键点击Git Bash Here,表示在当前文件夹打开git命令行窗口(本节忽略了Git的安装,可百度搜索安装步骤)。

指令:[git init]        初始化一个空仓库

出现.git文件表示仓库创建成功,由于是隐藏文件,需要显示隐藏文件。

 ​​​​

 4.1.2.2.2 远程仓库

远程仓库跟随提示即可创建

4.1.2.3 工作区、版本库、暂存区、文件状态

4.1.2.3.1 工作区

如上的git文件夹就是一个工作区。

4.1.2.3.2 版本库

工作区有一个隐藏目录.git.git文件夹是Git的版本库,而非工作区。

Git的版本库里存了很多东西,其中最重要的就是称为stage(或index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD

 4.1.2.3.3 暂存区

如版本库所言,里面的stage就是暂存区,顾名思义暂存用。

 4.1.2.3.4 文件状态

untracked未跟踪(未被纳入版本控制)
tracked已跟踪(被纳入版本控制)
Unmodified未修改状态
Modified已修改状态
Staged已暂存状态

4.1.2.4 本地仓库指令

指令:[git status]         查看文件状态

我们在工作区新建两个问价test.java和abc.java,输入指令,发现下面提示untracked files,而且文件为红色,说明这两个文件还没有加入暂存区。

指令:[git add  文件名]         将指定文件加入暂存区

指令:[git add --all ]         将所有文件加入暂存区

指令:[git commit -m 备注 文件名]         将指定文件提交到本地仓库

指令:[git commit -m 备注]         将所有文件提交到本地仓库

备注信息一定要填,否则无法成功提交。

指令:[git commit]     不加-m参数  打开一个窗口,输入修改提交信息 ,ESC +  ":wq"保存退出

指令:[git rm 文件名]         删除指定文件

删除后,git status命令会立刻告诉你哪些文件被删除了

 之后有两种操作,第一种,从版本库中删除该文件,那就用接着用git commit提交

指令:[git commit -m 备注 删除文件名]         将删除的文件提交到本地仓库

 这样文件就从版本库中删除了。

第二种,删错了,恢复,其实使用版本库中的替换被删除的

指令:[git checkout -- 文件名] 

4.1.2.5 远程仓库指令

指令:[ git remote ]   查看远程仓库,Git 克隆的仓库服务器的默认名字 默认有origin

 指令:[ git remote add <shortname> <url> ]   添加新的远程 Git 仓库,指定可以引用的简写

指令:[git clone [url] ]   克隆远程仓库

指令:[ git fetch ]   从远程仓库获取最新版本到本地仓库

指令:[ git pull  ]   从远程仓库获取最新版本并merge到本地仓库

注意:如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错(fatal: refusing to merge unrelated histories ),解决此问题可以在git pull命令后加入参数--allow-unrelated-histories

指令:[ git pull --allow-unrelated-histories ]   

指令:[ git push ]   提交到远程仓库  简写形式

指令:[ git push remote-name branch-name]   完整形式

4.1.2.6 添加忽略文件

当我们提交本地仓库的代码到远程仓库时,并不是所有的代码 都需要提交,如target目录下的文件、日志文件等。这些文件不需要上传,就需要用到忽略文件。

1.在工程中创建 .gitignore文件

2.在文件里按以下格式书写

# : 注释    * : 所有

# no .class files
*.class
# but do track lib.a, even though you're ignoring .a files above
!lib.a
# only ignore the TODO file in the current directory, not subdir/TODO
/TODO
# ignore all files in the build/ directory
build/
# ignore doc/notes.txt, but not doc/server/arch.txt
doc/*.txt
# ignore all .pdf files in the doc/ directory
doc/**/*.pdf

4.1.2.7 分支

 先来看一个分支图,

 之后思考一个问题,我们之前提交代码到远程仓库时,没有指定分支,所以默认是master主分支。如果观察仔细会发现,每次都是把远程仓库的所有代码克隆下来,之后修改后push后又覆盖远程仓库的所有代码。显然在实际的开发中,你是不可能这样的,所以引入了分支。

你可以在你的分支里随意修改,不会影响到主分支,只有你修改完成后,有相应的负责人合并分支。

指令:[ git branch ]         列出本地所有分支

指令:[ git branch -r]        列出远程所有分支

指令:[ git branch -a ]        列出本地和远程所有分支

指令:[ git branch 分支名]        创建指定分支名的分支

指令:[ git checkout 分支名]        切换分支

 *代表当前所处的分支。

指令:[ git push origin 分支名]        推送到远程仓库的指定分支

指令:[ git merge 分支名]      将指定分支合并到当前分支

如果两个不同的分支中,对同一个文件的同一个部分进行了不同的修改,Git 就没办法合并它们,同时会提示文件冲突。需要打开冲突的文件并修复冲突内容,最后执行git add命令来标识冲突已解决。

指令:[ git branch -d 要删除的分支名]         删除指定分支

如果对删除的分支进行了修改,上面的删除命令并不会删除分支,可以使用-D强制删除。

指令:[ git push origin –d 要删除的分支名 ]         删除远程仓库的指定分支

4.1.2.8 IDEA中Git项目协作开发

待更新


上一篇:4 JavaEE​​​​​​​
下一篇:4.2 JavaEE-MyBatis

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老李头喽

高级内容,进一步深入JA领域

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值