浅谈版本控制基础 ,以及Gitee 码云的简单使用

版本控制

  1. git 概念了解

  2. git基本操作流程

  3. git工作区,暂存区,版本库(本地仓库)

  4. git常用命令

    git add

    git commit - m “”

    git status

    git log

    git diff

    git rest --hard commotid

    git checkout – 文件名

    git rm 文件名

    git branch

    git branch 分支名

    git merge 分支名

    git branch -d 分支名

    git push

    git pull

    git clone 远程仓库路径

版本控制 reviosn control

维护工程蓝图的标准做法 项目从立项开始,所有的文件变化都记录在案

  1. 备份
  2. 代码还原
  3. 协同修改
  4. 多版本项目文件管理
  5. 追随问题代码的编写人和编写时间
  6. 权限控制

Git 分布式版本控制系统

Linus 开源 Linux windows linux mac

GitHub 开源项目

CVS / SVN 集中式版本控制系统 库版本集中存放在中央服务器 ( 需要联网 )

Git分布式版本控制 无网自己也是一个版本库 , 有网 可以互联

在这里插入图片描述
在这里插入图片描述

初始化设置

git config --global user.name "孙happy"
git config --global user.name "[email protected]"
git init

添加文件到暂存区与本地仓库

git add file1.txt file2.txt 
git commit -m "操作信息"
 
暂存(index) 位于项目文件夹/.git/index 下
本地版本库(local repository)  项目文件夹./git/objects/

![在这里插入图片描述](https://img-blog.csdnimg.cn/20200806154132694.png?x-oss-在这里插入图片描述

查看版本库的状态

git status 主要查看缓存区内容

提交日志

git log 操作历史记录
git log --pretty=oneline  
<commit id > 唯一标识符 ,保证全球唯一 (确保连机代码合并时可能出现异常)

查看异常

git diff 不同版本之间的差异  也就是不同conmit之间

版本回退

从最近的一个`commit` 恢复
当前版本    `HEAD`  
上一个版本    `HEAD^`
上上一个版本  `HEAD^^`
所以写成`HEAD~100`。

回到指定版本
git reset --hard <commit id>

撤销修改

git checkout -- filename  丢弃工作区的修改 (留意--后面有一个空格)
readme.text  修改后未放入暂存区 , 则返回版本库模样
readme.text  修改后放入暂存区 , 则返回暂存区模样

删除文件

git rm a.tet
git add .
git commit

分支管理

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2o1T7JUM-1596699545604)(C:\Users\白米白9999\AppData\Roaming\Typora\typora-user-images\1596080999012.png)]

查看分支  git branch 

创建分支  git branch<name> : $ git branch xiaosun

切换分支  git checkout <name> 

创建+切换分支  git checkout -b<name>

将某分支合并到当前分支  git merge <name>

删除分支  git branch -d<name>

git 文件冲突

git会对每个文件逐行进行比较,如果在合并的时候,如果同一行有两个人同时修改过,那么就不知道使用哪部分的代码,这是造成冲突的原因。

Gitee 码云的使用

  1. 注册登录

  2. 新建仓库

  3. 填写相关信息

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tRvGfEnU-1596699545605)(C:\Users\白米白9999\AppData\Roaming\Typora\typora-user-images\1596119377278.png)]

    1. 操作相关指令,将本地文件push到远程仓库

    2. 复制相关路径 ,在ideal中克隆打开

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eyzZQTZ8-1596699545606)(C:\Users\白米白9999\AppData\Roaming\Typora\typora-user-images\1596119505222.png)]

        	6.  在本地master中创建本地分支进行相关项目开发
        	7.  完成后, 将自己本地代码上传到远程仓库保存
        	8.   测试 , 无异常则与本地master合并
        	9.  无异常 ,则将本地合并代码提交远程master
      

文件新增编辑和删除(本地路径)

** 棕色:红棕色 未被 Git 管理(未添加到暂存区)

​ **绿色:**新增的文件 且 加入到暂存区

​ **蓝色:**文件已经提交到远 程但是 该文件又被编辑过了

​ **黑色:**代表该文件在当前版本与远程是一致的

团队开发注意事项

  1. 组员每次开发,都必须先 push 到自己的远程分支

  2. 每次对 master 分支做合并或推送之前,原地备份代码

  3. 组员(组长)确保自己分支的代码与 master 分支都没有错误以后,将本地 master 推送到远程

  4. 每天早上开发前,先切换到 master 分支,更新代码,对整个项目进行备份,再切换到自己的分支,

    然后将 master 合并到自己的分支上

  5. 每个小组每天必须保证一份新的代码,即组员除了将代码提交到自己的分支以外,都必须再将自己的代码合并到master

  6. 再次强调,每次合并或推送前,都先对项目进行备份,避免操作不熟练导致出错后代码丢失

在这里插入图片描述

组每天必须保证一份新的代码,即组员除了将代码提交到自己的分支以外,都必须再将自己的代码合并到master

  1. 再次强调,每次合并或推送前,都先对项目进行备份,避免操作不熟练导致出错后代码丢失

猜你喜欢

转载自blog.csdn.net/weixin_47057820/article/details/107841455