• Git版本号控制


        Git是分布式版本号控制系统。与SVN类似的集中化版本号控制系统相比。集中化版本号控制系统尽管可以令多个团队成员一起协作开发,但有时假设中央server宕机的话,谁也无法在宕机期间提交更新和协同开发。

    甚至有时,中央server磁盘故障,恰巧又没有做备份或备份没及时,那就可能有丢失数据的风险。


        但Git是分布式的版本号控制系统。client不仅仅是提取最新版本号的快照,并且将整个代码仓库镜像复制下来。假设不论什么协同工作用的server发生问题了,也能够用不论什么一个代码仓库来恢复。

    并且在协作server宕机期间,你也能够提交代码到本地仓库,当协作server正常工作后。你再将本地仓库同步到远程仓库。


    安装Git


    Linux系统下通过git命令查看安装情况,假设没有安装能够通过sudo apt-get install git完毕安装。

    安装完毕后。还须要通过进一步设置

    git config --global user.name "name"

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


    创建版本号库


    什么是版本号库呢?版本号库又名仓库,英文名repository,你能够简单理解成一个文件夹。这个文件夹里面的全部文件都能够被Git管理起来,每一个文件的改动、删除,Git都能跟踪。以便不论什么时刻都能够追踪历史,或者在将来某个时刻能够“还原”。

    创建一个空文件夹,并在当前文件夹以下使用git init将这个文件夹变成Git能够管理的仓库。

    写好一个文件后能够使用git add filename将文件加入到仓库。

    使用git commit -m "your describe"把文件提交到仓库-m后面的參数用于描写叙述文件的更改情况。以便于每次查看;


    版本号查看


    git status能够实时查看仓库的状态

    git diff filename 能够查看当前文件上一次提交的文件的不同

    git log能够查看版本号的历史记录

    git reflog查看历史命令

    因为在Git中HEAD指向的是当前版本号。因此能够使用git reset --hard commit_id(提交的版本号的ID号或者HEAD^-上一版本号。HEAD^^-上上版本号,HEAD~100上100个版本号)


    版本号回退


    1.当你想丢弃工作区的改动时能够使用git checkout --filename

    2.当改动之后又提交到暂存区时能够使用git reset HEAD filename就回到了1的情况。然后反复1的操作就可以


    删除文件


    git rm filename能够从版本号库中删除文件,并用git commit提交


    远程仓库


    关于配置和克隆请參考廖老师博客点击打开链接


    分支管理


    使用git checkout -b branchname能够创建一个分支并切换到该分支。其相当于命令git branch branchname加上git checkout branchname(用于在分支间切换)

    git branch 能够查看分支,当前分之前会有一个*

    合并某分支到当前分支git merge branchname(高速合并)能够使用git merge --no-ff -m "your describ" branch关掉高速合并。这个时候能够看到以前做过的合并

    删除分支git branch -d branchname

    (当git无法自己主动合并分支时,说明存在冲突这个时候要解决掉冲突然后才干合并)

    git log --graph能够看到分支合并图

    git stash能够暂存当前的工作现场,然后修复bug,再git stash pop回到工作现场

    假设要丢弃一个没有被合并过的分支。能够通过git branch -D filename强行删除


    多人合作


    git remote -v显示具体的远程库信息

    git push origin branchname将本地分支推送到,假设失败用git pull抓取远程的新提交

    git checkout -b branchname origin/branchname在本地创建和远程分支相应的分支

    git branch --set-upstream branchname origin/branchname

    git pull从远程抓取分支







     




  • 相关阅读:
    Thymeleaf 基本表达式
    html中<radio>单选按钮控件标签用法解析及如何设置默认选中
    <%@ page contentType="text/html; charset=utf-8" language="java"%>每一个字符的含义
    El表达式的关系运算符
    Centos7.6安装Docker安装
    linux必须熟练掌握的基础命令
    CentOS7.x编译安装zabbix4.0
    编译装php7.2 && nginx-1.14
    CentOS7.x安装MySQL5.7.25
    CentOS7.x安装kickstart
  • 原文地址:https://www.cnblogs.com/brucemengbm/p/6949823.html
Copyright © 2020-2023  润新知