一为什么需要学习git软件

  1. 资源管理
  2. 软件版本
  3. 文件版本
    1. 保存重要的更改
    2. 恢复文件
  4. 代码管理
    1. 保存和管理文件
    2. 提供客户端工具进行访问
    3. 提供不同版本文件的对比功能,通过软件自身来实现的
    4. 资源库,保存所有文件,每一个开发人员都可以访问对应的数据(中央服务器)
    5. 需要修改文件的时候需要将文件下载到本地,修改完成之后上传到客户端,集中式版本控制
    6. 但是存在文件冲突问题,vss的方式是通过上锁的形式
      1. 通过上锁的形式
      2. 通过比对的方式,如果都是对同一行文件进行修改那么就没有办法了,必须人工进行处理
      3. 分布式版本控制:本地和服务器都存在一个服务器,当远程服务宕机了,那么还可以使用本地的服务器,非常的依赖网络

git的安装

多人协作的功能

  1. 分支,对不同的功能设置不同的分支,提交之后最后进行分支合并就可以有效的避免冲突

git的客户端操作

git的基本命令

git clone克隆远程仓库,在最后可以添加一个空格,然后更改克隆下来的仓库名称 git init初始化本地仓库 git -v产看当前GIT 的版本号 git config 配置git 其中后面可以更上user.name配置自己的名称 user.email配置邮箱,当然文件夹中也存在这个配置可以直接修改,当我们需要将所有git管理的文件的相关配置信息都修改为一样的时候可以加上--global属性,这个文件存在c盘user目录下 git statusgit的状态,查看暂存区的状态 git add xxx.text将改变的文件交给git的暂存区进行管理 git rm xxx.text将暂存区的文件转到工作区 git commit -m xxx 将文件提交到存储区,并写上描述 git add *.text提交所有修改的文件 git log 查看之前提交的状态 git log --online仅仅将信息进行一行显示

git的误删除

删除文件的时候是在工作区进行删除的,一般情况下我们可以使用git restore进行恢复,但是当我们将暂存区中的文件也删除之就不能使用这个命令进行恢复了 git reset -hard 版本号 将文件恢复到某一个版本,但是这个操作将不会被记录,并且之前的删除的记录也将丢失 git revert 版本号将问价恢复到某一个版本之前的那一个版本,但是此时这个操作将会被记录

分支操作

git branch 分支名创建分支,但是在创建分支之前需要提交一次内容到主分支 git branch产看当前分支 git checkout user将当前分支切换到user分支 git checkout -b 分支名创建一个分支并且切换到此分支 git branch -d 分支删除分支 git merge 分支 将分支合并到当前分支,当出现冲突的时候也需要进行手动处理 git tag 别名 将版本名增加一个标签,这样在查看版本名的时候就显得很方便了 git tag -d name删除tag,还可以给分支创建tag git remote -xxx可以进行增加远程仓库,删除,改名… git push 提交远程仓库 git pull拉去第三方代码库

搭建属于自己的代码库gitlab(极狐)

这个软件需要安装到Linux系统