1 Git
Git是分布式的版本控制工具,使用版本控制工具,可以回退到某个时间的版本,团队合作开发 共同维护同一套代码,可以记录每次提交后的状态 差分(提交之间的区别)
2 分布式和集中式
Git
SVN
3 基本流程
4 Git命令
4.1 安装git
右键
4.2 初始化本地仓库
4.2.1 git init
初始化的是一个全新的空的仓库
4.2.1.1 git init
4.2.1.2 git init --bare名字
4.2.2 git clone
将远程仓库全部都复制过来
git clone 远程仓库地址
4.2.3 远程仓库的创建
公开:所有人可以查看,你自己团队的人才可以修改
私有:你团队的人才能查看修改
创建远程仓库,通过git clone 复制下来,本地仓库
4.2.4 git status
查看状态 工作区相对于暂存区的状态
工作区产生了哪一些变化,这些变化是否提交到了暂存区
4.2.5 git add 文件Git
发生变化的文件提交到暂存区
4.2.6 设置当前用户的信息
在第一次commit之前,会提示你做这件事情
git config --global user.name “”
git config --global user.email “”
git config --global credential.helper “store”
user目录下
4.2.7 git commit -m “提交信息”
提交暂存区的变化到本地仓库,同时生成版本
4.2.8 git log
4.2.9 git push
将本地仓库的更新提交到远程仓库
在执行commit时已经完成了提交 将本地仓库里的变化 push更新给远程仓库
4.2.10 git pull
获得远程仓库的更新
4.2.11 冲突
通常是多个开发人员修改了同一个文件 后提交的人需要处理冲突
4.2.12 后悔药 →撤销操作
撤销的是提交的操作
4.2.12.1 工作区回退git checkout 文件名 (谨慎操作)
找不回来
4.2.12.2 git reset 文件名
从暂存区回退到工作区
4.2.12.3 git reset --hard版本号
本地仓库回退到之前的某个版本 本地仓库是落后于远程仓库的
如果你回退之后要做开发 仍然需要先pull
4.2.12.4 误删除
回退到之前的版本 找到你删除的内容 git pull回来重新添加 重新提交
5 Git的分支
主干 分支
5.1 master-dev模型
针对于当前分支也是存在工作区、暂存区、本地仓库的
5.2 master-dev-developer
5.3 创建分支git checkout -b分支名
在****当前的分支****的基础上创建分支,新分支的内容是和当前这个分支上的是一样的
5.4 查看分支git branch -a
查看全部分支
5.5 建立分支之间的联系git push --set-upstream origin dev
5.6 分支的合并 git merge 分支名
将一个分支的内容合并到另一个分支上。
将dev分支合并到master分支
1、 首先先切换到master分支上
2、 在master上合并dev
5.6.1 分支切换git checkout 分支名
5.6.2 合并dev
git merge dev
5.6.3 将变化提交到远程
6 忽略管理配置
.gitignore放在工作区的根目录下
建议大家都增加一个.gitignore 把.gitignore提交到远程仓库管理
*如果某个文件已经管理了,在进行忽略管理是失效的仍然可以追踪到变化*
*如果不小心把某个文件管理起来*
本地仓库产生删除变化,将删除变化 push到远程
7 idea中使用git
在idea中新增内容之后
执行commit
7.1
7.2 在idea中使用git命令
File Settings Teminal
8 linux里(bash)的命令
cd 前往目录
cd …上一级目录
touch
新建文件
vim编辑器 git帮你自动合并 弹出vim编辑器
退出vim编辑器
冒号:wq
冒号:q!
git add 文件名
可以使用使用通配符
git add *.java 提交所有的java变化
git add src/main/* 提交src/main/路径下的所有的变化
git add . 提交所有的变化
建议:提交之前,先去git status
ll和ls查看当前目录下的文件