git入门课程笔记

一、git简介

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

二、版本控制

1.版本控制工具是什么:

        软件:用来保存软件开发中的各个版本

2.为什么要用版本空难感知工具

        有利于打造自己的核心竞争力,积累经验,保存项目

        能够提供以往的版本记录,便于恢复操作

        分清责任不背锅

        科学合理地规划工作

        进行项目精度和进度的一个把控

三、svn和git

SVN 是 Subversion 的简称,是一个开放源代码的版本控制系统,相较于 RCS、CVS,它采用了分支管理系统。GIT 不仅仅是个版本控制系统,它也是个内容管理系统(CMS), 工作管理系统等。

1. GIT和SVN的区别

        (1)GIT 是分布式的,SVN 不是:这是 GIT 和其它非分布式的版本控制系统,例如 SVN,CVS 等,最核心的区别。

        (2)GIT 把内容按元数据方式存储,而 SVN 是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似 .svn , .cvs 等的文件夹里。

        (3)GIT 分支和SVN的分支不同:分支在SVN中一点不特别,就是版本库中的另外的一个目录。

        (4)GIT 没有一个全局的版本号,而 SVN 有:目前为止这是跟 SVN 相比 GIT 缺少的最大的一个特征。
        (5)GIT 的内容完整性要优于 SVN:GIT 的内容存储使用的是 SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。

2.SVN优缺点

优点

        (1)管理方便,逻辑明确,符合一般人思维习惯

        (2)集中式管理

        (3)更容易保证代码一致性

        (4)更适合项目管理

缺点

        (1)服务器压力大(项目越做越大,上传下载压力大)

        (2)集中式管理,所有代码都提交的服务器上,服务器出现问题,就无法使用

        (3)不太适合开源(权限控制)

3.GIT优缺点

优点

        (1)非常适合分布式开发(很多人开发)

        (2)灵活快速开发

        (3)服务器压力小

        (4)离线工作(每个人都从仓库里拉下来一个完整的代码,服务器出现问题,不影响工作)

缺点

        (1)学习周期长(SVN有界面,Git更多是命令行)

        (2)不太符合常规思维,更符合程序思维

        (3)代码保密性差(每个人都能拉下来代码离线工作)

四、git重要概念

1.仓库、分支、提交

仓库(书店):所有版本的代码都在仓库里

分支(书架):不同功能的代码存放的地方

提交(书):每一个版本的代码

2.三区

工作区:工作的目录

暂存区:提交上去还没有放到最终仓库里,项目目录和仓库之间的暂时存储区域

仓库:放着所有的版本

远程仓库:服务器上的仓库

五、Git工作流程

Git 的一般工作流程如下:

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

 

 六、Git常用基础操作

1.新建一个本地仓库文件夹

 

 2.初始化一个仓库

git init

 3.新建一个文件

4.查看仓库状态(非常重要,会提示该进行哪一步)

git status

 有一个hello.txt文件未添加到缓存区

 5.将文件添加到缓存区

git add hello.txt # 第一种,添加一个文件
git add .         # 第二种,添加目录下所有文件

 已经添加到缓存区

6.将暂存区文件提交到仓库

git commit -m '这里写注释'

提交成功

7.增加文件内容

 

 8.放到暂存区再提交

 9.查看提交了几个版本

git log

 

 长串数字是提交的ID

10.如果后面有问题,想回到前面版本,使用ID

git checkout id

看HEAD is now at 已经回到第一个版本 

 11.创建并查看新分支

git checkout -b new_fenzhi  # 复制一份原有的东西,新建一个新分支
git branch  # 查看分支
git checkout 分支名  # 切换分支

不同分支之间操作不受影响

七、完整代码同步到gitlab

1.创建工程

 

2.配置账户,确保权限 

git config --global user.name ""
git config --global user.email ""

 3.将仓库克隆到本地

git clone http://10.1.98.26:30080/BestSonder/changedetection_bit.git

 

 3.初始化一个仓库

git init

4.添加到暂存区

git add .
git status

 5.提交到本地仓库

git commit -m 'zqf first'

 6.同步到gitlab远程仓库

git push -u origin master  # 第一次
git push # 之后

 

7.git指令大全

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

九磅十五便士°

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值