Git…Git
一、发布
1.新增本地仓库
vcs —>import into version control —> create Git Repository ---->选中项目当做本地仓库的存放路径
2.添加到暂存区
vcs —>git —>add
3.提交到本地分支
vcs —>git —>commit…
4.发布到远程分支
vcs —>git —> push
二、克隆
vcs —> check from version control ----> git
三、更新
vcs —>git —> pull
四、冲突
1. 弹窗1点 “merge”
2. 弹窗2点击"merge"
3. 弹窗3点击 “》” “《” 进行合并代码
注意:①早上来了先更新代码
②写一个(功能)提交一个(功能)
五、分支
1.创建分支
创建分支: vcs —>git —> beranches —>new branch
推送分支:vcs —>git —> push
2.合并分支
合并
1.本地dev ----------->本地master:
①切换到本地master: vcs --->git ---> branches ---->local beanch [master]
②本地dev合并到本地master:vcs --->git ---> nerge changes ---->
----> 弹窗勾选本地dev , 点击“master” 按钮
push
2.本地master ------->远程master
vcs --->git ---> push
注意:合并本地分支,推送远程分支
1.工作区,暂存区
2.命令速查表
3.远程库
4.远程库共享
在项目开发阶段问题
- 文件无法追溯历史(仅限于纯文本文件)
- 文件共享不便
版本控制系统
- 集中式:CVS, SVN
- 分布式:Git
命令
# 设置命令
git config --list
# 设置用户身份(姓名,邮箱)
git config --global user.name "wangsen"
git config --global user.eamil "wangsen127@163.com"
#初始化仓库
git init
#将文件添加到暂存区
#git add 文件/git add .
git add HelloWorld.java
#提交
#git commit -m "注释内容:描述此次提交的内容"
git commit -m "添加HelloWorld文件"
#查看状态
git status
git status -s
#查看日志
git log
git log --oneline
#版本切换
#HEAD是一个指针,指向一个分支
#git reset --hard 版本号
git reset --hard f754c1a
#删除文件
#git rm 文件名称 = 本地删除 + git add
git rm delete.txt
#检出:从本地库检出到工作区
#git checkout -- 文件名称
git checkout -- HelloWorld.java
#从暂存区撤销
#git restore --staged 文件名称
git restore --staged notcommit.txt
#比较文件差异:比较工作区与本地库中存储的文件内容差异
#git diff 文件名称
git diff HelloWorld.java
#分支
#创建分支
#git branch 分支名
git branch dev
#查看分支
git branch
git branch -v
#切换分支
#git checkout 分支名
git checkout dev
#分支合并
#git merge 被合并分支名
#master需要合并dev分支内容,首先切换到master分支,执行以下命令
git merge dev
#git远程仓库:github, gitlab, gitee
# 配置远程仓库地址
#查看现有的远程仓库
git remote
#添加远程仓库地址到本地仓库中
#git remote add 仓库地址名称(仓库地址的标识) 仓库地址
#删除本地仓库中远程仓库地址
#git remote remove 仓库地址名称
#将本地仓库推动到远程仓库中
#git push 仓库地址名称 分支名
#克隆项目:将远程仓库拉取到本地
#git clone 远程仓库地址
#从远程仓库拉取下来的项目,远程仓库地址名称默认为origin
#从远程仓库中拉取新的文件
#git pull 仓库地址名称 分支名
避免文件冲突
张三 本地文件 springmvc.xml 版本号为1 --> 版本号为2(远程库与本地保持一致)
李四 本地文件 springmvc.xml 版本号为1–>版本号为3(没有向远程库推送)
-
自己编辑自己的文件,不要去修改别人的文件。
-
通知团队,在修改公共配置或文件之前,先进行pull操作,然后提交commit,推送push
解决文件冲突
- 将修改文件备份一份
- 将文件回退与上一个版本一致的状态
- 拉取新的代码
- 在新的文件中添加自己的修改
- 提交,推送