- git简介
- git的常用命令
- git命令的常用理论
1.git简介
Git是什么?
Git是一个开源的分布式,用于敏捷高效地处理任何或小或大的项目
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Git 与常用的版本控制工具 CVSI Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。
Git与SVN区别(重点记录1/2/3/7点)
#去中心化 GIT是分布式的,SVN不是:这是GIT和其它非分布式的版本控制系统,例如SVN,CVS等,最核心的区别。
#git仓库的任何一个拷贝都可以独立作为一个服务器来使用
#在Git中文件有四种状态: 未跟踪(untrack):表示文件为新增加的 已修改(modified):表示修改了文件,但还没保存到git仓库中。 已暂存(staged):表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中 已提交(committed):表示文件已保存在git仓库中。
#其它 GIT没有一个全局的版本号,而SVN有:目前为止这是跟SVN相比GIT缺少的最大的一个特征。 GIT的内容完整性要优于SVN:GIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏
#直接记录快照,而非差异 GIT把内容按元数据方式存储,而SVN是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。 直接记录快照,而非差异 #直接记录快照,而非差异 GIT分支和SVN的分支不同,分支在SVN中一点不特别,就是版本库中的另外的一个目录。
#git存在分支
svn项目版本管理工具
1.组长搭建svn的服务器
2.组长在服务器中新建代码仓库,新建用户
3.组长上传源码/doc/SOL放入新建的仓库中
4.组长需要蒋新建的代码仓库地址,共享出去ur1地址
5.组员就拿着这个账户密码访问ur1地址,就可以进行下载了
6.组员每天上午上班,更新组长电脑中的服务器代码到本地
7.组员/组长下班,需要将当天的代码更新到svn服务器
憋端1.如果组长不在身边,代码不能上传
2.如果组长电脑蓝屏、死机、进水,那么最新的代码一定是丢失的
3.组长在身边的情况下,网络不稳定,经常导致代码上传更新失败
4.版本1到版本2,又想从版本2回退到版本1,会牵扯出其它的不相干的问题
2.git的常用命令
申请并[激活]一个Gitee帐号
在window中安装Git 版本要求:Git-2.22.0-64-bit.exe或以上版本, 安装路径:请不要安装在C盘(win10会有权限问题),建议选择“D:\tools\Git”
安装步骤看以下博主的链接:01%20Git%202_22_0详细安装步骤%20-%20wuxiao18的博客%20-%20CSDN博客.mht
git的常用命令
组长:zuzhang
组员:zuyuan
1.组长永安搭建ssm环境,并且将项目推送到qitee码云上0新建码云仓库Git 全局设置:
git config --global user.name "朱琳均"
git config --global user.email "13680138+zhu___linjun@user.noreply.gitee.com"
创建 git 仓库:mkdir zuzhang
cd zuzhang
git init
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin https://gitee.com/zhu___linjun/zuzhang.git
git push -u origin "master"已有仓库?
cd existing_git_repo
git remote add origin https://gitee.com/zhu___linjun/zuzhang.git
git push -u origin "master"演示一下
2.组长在服务器中新建代码仓库,新建用户 (私有仓库....共源直接第四步)
3.组长上传源码/doc/SOL放入新建的仓库中
4.组长需要蒋新建的代码仓库地址,共享出去ur1地址
朱琳均/zuzhang
5.组员就拿着这个账户密码访问ur1地址,就可以进行下载了
git clone 朱琳均/zuzhang
6.组员/组长下班需要将当天的代码更新到svn服务器
7.组员每天上午上班,更新组长电脑中的服务器代码到本地
版本冲突问题
问题:组长上传了一个文件,版本为2。此时组员觉得版本过低将版本2改为了版本3上传了,没有和组长说。组长在使用时也发现了版本问题,将版本2改为了版本4上传了。此时起冲突报错了。
解决方案:
先更新git pull,然后查看pom.xml,有版本3,也有版本4。此时需要组员和组长线下沟通,是保留版本3还是4,或者两个都保留。(这里保留了2个版本)
总结git的常用命令
git init 初始化git管理目录
git三部曲: git add/commit/push 提交代码
git pull 拉取代码
git clone 克隆代码
3.git命令的常用理论
git的文件状态是其git核心内容,了解后对后续的操作有莫大的帮助,不同的文件状态又存储在不同的工作区域中。
1.文件状态
git中的文件有以下几种状态:
未跟踪(untrack):表示文件为新增加的
已修改(modified):表示修改了文件,但还没保存到git仓库中。
已暂存(staged):表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中
已提交(committed): 表示文件已保存在git仓库中2.工作区域
按照本地计算机与远程计算机划分,工作区域有以下几种
1)本地计算机
working Directory (工作目录):即正在编辑的文件状态。文件状态为未跟踪(untrack)和已修改(modified)在此区域内。
staging Area (暂存区):保存了下次将提交的文件列表信息。文件状态为已暂存 (staged)在此区域内。2)远程计算机
Repository(本地仓库) : 提交到本地仓库的文件