zoukankan      html  css  js  c++  java
  • 【Git】介绍与概述

    版本控制工具应该具备的功能?

    协同修改

      多人并行不悖的修改服务器端的同一个文件。

    数据备份

      不仅保存目录和文件的当前状态,还能够保存每一个提交过的历史状态。

    版本管理

      在保存每一个版本的文件信息的时候要做到不保存重复数据,以节约存储空间,提高运行效率。

      这方面 SVN 采用的是增量式管理的方式,而 Git 采取了文件系统快照的方式。

    权限控制

      对团队中参与开发的人员进行权限控制。

      对团队外开发者贡献的代码进行审核——Git 独有。

    历史记录

      查看修改人、修改时间、修改内容、日志信息。

      将本地文件恢复到某一个历史状态。

    分支管理

      允许开发团队在工作过程中多条生产线同时推进任务,进一步提高效率


    版本控制简介

    版本控制

      工程设计领域中使用版本控制管理工程蓝图的设计过程。

      在 IT 开发过程中也可以使用版本控制思想管理代码的版本迭代。

    版本控制工具

      思想:版本控制

      实现:版本控制工具


    回顾Linux基本指令:

    - 切换当前的工作路径 cd

    cd 绝对路径
    cd 从当前路径访问的某一下级目录
    cd .. 【回退上一级目录】

    如果像这样带有空格的目录,使用斜杠进行转义处理

    - 显示当前的绝对路径

    pwd

    【但是这个GIT终端自动提供了绝对路径显示,所以这个命令显的很鸡肋了】

    - 清空控制台消息 clear

    clear

    - 查看历史命令记录

    history

    查看最近使用的命令,参数数字表示最近的个数限制

    history 数字

    - 展示当前目录的所有项

    dir
    ll
    ls

    使用DIR

    使用LL

    使用LS

    - 创建文件

    touch 文件名

    - 创建目录

    mkdir 目录名

    - 删除文件或者目录

    rm -rf 文件名或者目录名

    - 查看帮助手册【全是英文看了也没用】

    help

    【在Windows上写Linux命令,这感觉真奇妙】

    但是有一点值得注意,就是如果我们支持了Linux的命令,

    也就意味着可以像Linux一样解压那些只有在Linux才可以被访问的压缩文件或者包文件

    或者运行。。。


    Git 原理概念:

    - 工作区:【Working Directory】

    - 暂存区:【Stage / Index】

    - 版本库:【Repository Git Directory】

    仓库搭建:

    - 搭建本地仓库:

    git init 

    或者指定一个目录位置进行仓库初始化

    但是默认是D盘这个仓库为一个主分支

    【如果你不喜欢放在这里的仓库,你完全可以删除掉】

    在这个初始化的仓库中不会显示初始化内容

    可以点击资源管理器的【查看】

    然后点击【隐藏的项目】,就会发现一个.git的隐藏文件

    里面是关于这个仓库的一些配置信息

    第二种方式是使用克隆,下载远程仓库到本地

    git clone [url]

    文件的4中状态:

    - 1、Untracked 未跟踪

    - 2、Unmodify 未被修改

    - 3、Modified 文件已修改

    - 4、Staged 暂存状态

    上传仓库:

    git add 文件名或者目录 【添加至暂存区】
    git commit       【把暂存区文件提交版本区,本地库】
    git push        【把本地库的文件通过协议传输至远程仓库】

    我先放入了一个装有文件的目录

    执行添加所有操作

    这个仓库目录下所有的东西都会被添加到暂存区

    这些文件会被标识成绿色的状态

    git add . 添加所有文件

    这时我们再新创建一个文件,再次查看状态时

    就会发现新的文件是红色标识的,这表示没有被添加的文件,未跟踪的状态

    执行commit,添加到本地仓库

    记住使用-m添加提交信息

    git commit -m 提交信息

    再次查看状态,发现被添加的文件全部提交到了本地仓库

    为被跟踪的文件不会被提交


    文件忽略选择

    一些文件我们不希望被git上传

    有些时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等

    在主目录下建立".gitignore"文件,此文件有如下规则:

    1. 忽略文件中的空行或以井号(#)开始的行将会被忽略。

    2. 可以使用Linux通配符。例如:星号(*)代表任意多个字符,问号(?)代表一个字符,方括号([abc])代表可选字符范围,大括号({string1,string2,...})代表可选的字符串等。

    3. 如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略。

    4. 如果名称的最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中的文件不忽略。

    5. 如果名称的最后面是一个路径分隔符(/),表示要忽略的是此目录下该名称的子目录,而非文件(默认文件或目录都忽略)。

    #为注释
    *.txt        #忽略所有 .txt结尾的文件,这样的话上传就不会被选中!
    !lib.txt     #但lib.txt除外
    /temp        #仅忽略项目根目录下的TODO文件,不包括其它目录temp
    build/       #忽略build/目录下的所有文件
    doc/*.txt    #会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
  • 相关阅读:
    Logwatch的配置与使用
    Redirect HTTP to HTTPS on Tomcat
    RedHat7搭建yum源服务器
    卸载RedHat7自带的yum,安装并使用网易163源
    15个Linux Yum命令实例--安装/卸载/更新
    GitHub详细教程
    RedHat7 Git 安装使用
    RedHat7 SELinux
    RedHat7配置IdM server
    IIS Shared Configuration
  • 原文地址:https://www.cnblogs.com/mindzone/p/12912686.html
Copyright © 2011-2022 走看看