ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

git版本控制系统

2021-07-12 10:01:47  阅读:126  来源: 互联网

标签:svn 文件 git 提交 仓库 控制系统 版本


一、git是什么?

版本控制系统,采用了分布式版本库的方式,不必服务器端软件支持;

二、git和svn的区别?

git不仅仅是个版本控制系统,它也是个内容管理系统(CMS), 工作管理系统等。

1.git是分布式的,svn不是;

2.git是把内容按元数据方式存储,而svn是按文件;

3.git分支和svn的分支不同;

4.git没有一个全局的版本号,而svn有;

5.git的内容完整性要优于svn;git的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏;

三、git安装

$ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \
  libz-dev libssl-dev

$ apt-get install git

$ git --version
git version 2.30.2

四、配置用户信息

$ git config --global user.name "tingting.zhou"
$ git config --global user.email java_ztt@163.com

五、查看配置信息

git config --list

六、git工作流程

  1. 克隆git资源作为工作目录;
  2. 在克隆的资源上添加或修改文件;
  3. 如果其他人修改了,你可以更新资源;
  4. 在提交前查看修改;
  5. 提交修改;
  6. 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交;

七、git工作区、暂存区和版本库

工作区:就是在自己电脑里面能看到的目录;

暂存区(stage或index):一般存放在.git目录下的index文件(.git/index)中,所以我们把暂存区有时也叫索引;

版本库:工作区有一个隐藏目录.git,这个不算工作区,而是git的版本库;

八、git创建仓库等

(一)、初始化一个git仓库:git init

在执行完成git init命令后,git仓库会生成一个.git目录,该目录包含了资源的所有元数据,其他的项目目录保持不变;

(二)、初始化一个指定目录的git仓库:git init newrepo

(三)、文件纳入版本控制: git add  *.java

(四)、提交文件:git commit -m '提交说明'

(五)、从现有git仓库中拷贝项目:git clone git仓库地址;git clone git仓库地址 本地目录

九、git基本操作:git clone、git push、git add、git commit、git checkout、git pull

  1. git add:添加文件到仓库;

  2. git  status:查看仓库当前的状态,显示有变更的文件;

  3. git  diff:比较文件的不同,即暂存区和工作区的差异;

  4. git  commit:提交暂存到本地仓库;

  5. git  reset:回退版本;

  6. git  rm:删除工作区文件;

  7. git  push:移动或重命名工作区文件。

十、提交日志:

  1. git log:查看历史提交命令

  2. git  blame 文件名称  git blame 以列表形式查看指定文件的历史修改记录;

十一、远程操作:

  1. git remove:远程仓库操作

  2. git fetch:从远程获取代码库

  3. git pull:下载远程代码并合并

  4. git push:上传远程代码并合并

十二、分支相关命令:

创建分支命令:

git branch (branchname)

切换分支命令:

git checkout (branchname)

合并分支:

git merge

标签:svn,文件,git,提交,仓库,控制系统,版本
来源: https://blog.csdn.net/qq_41629684/article/details/118513067

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有