zoukankan      html  css  js  c++  java
  • Git教程-安装与创建版本库

    Git是一个分布式版本控制系统,他通过命令行使用的工具,Github是提供Git仓库托管服务的网站

    安装参考:

    https://www.liaoxuefeng.com/wiki/896043488029600/896067074338496

    创建版本库

    参考链接:https://www.liaoxuefeng.com/wiki/896043488029600/896827951938304

    首先创建一个文件夹

    $ mkdir learngit
    $ cd learngit
    $ pwd
    /Users/michael/learngit
    

    然后变成Git可以管理的仓库

    $ git init
    Initialized empty Git repository in /Users/michael/learngit/.git/
    

      然后里面会多处一个.git的文件夹,这个文件夹是用来存储管理信息的,有人给我说不要动他

    λ ls -ah
    ./  ../  .git/
    

      我们也可以进入一个已经有文件的文件夹使用git init命令,同样也能把这个文件变成版本库

    向版本库中添加文件

      版本控制系统只能够跟踪文本文件的改动,如TXT文件,网页,所有的程序代码,如果文件时二进制文件,虽然能管理,但只能把每次改动的二进制文件给串联起来,不知到怎么串联的。

      因为文本是有编码的,比如中文有常用的GBK编码,日文有Shift_JIS编码,如果没有历史遗留问题,强烈建议使用标准的UTF-8编码,所有语言使用同一种编码,既没有冲突,又被所有平台所支持。

      不要使用windows自带的记事本编辑文本文件,因为Microsoft的开发人员会在文件开头添加一个十六进制字符串,而这个字符串会带来很多莫名奇妙的问题,比如写好的HTML网页在显示的时候会在开头显示一个?

      一定要放到learngit目录下(子目录也行),因为这是一个Git仓库,放到其他地方Git再厉害也找不到这个文件。

      第一步:用命令git add告诉Git,把文件添加到仓库:

    C:UsersAdministrator.SC-2012learngit (master -> origin)
    λ git add readme.txt
    
    C:UsersAdministrator.SC-201learngit (master -> origin)
    λ
    

      执行上面的命令,没有任何显示,这就对了,Unix的哲学是“没有消息就是好消息”,说明添加成功。

      第二步,用命令git commit告诉Git,把文件提交到仓库:(commit:保证)

    λ git commit -m "创建了一个readme.txt"#-m后面是对本次提交文件的说明
    [master (root-commit) b30fedb] 创建了一个readme.txt
     1 file changed, 2 insertions(+)#一个文件被改动,添加了两行内容
     create mode 100644 readme.txt
    

      为什么Git添加文件需要addcommit一共两步呢?因为commit可以一次提交很多文件,所以你可以多次add不同的文件,比如:

    λ git add file1.txt
    
    C:UsersAdministrator.SC-201605202132learngit (master -> origin)
    λ git add file2.txt file3.txt#中间用空格而不是逗号隔开
    
    C:UsersAdministrator.SC-201605202132learngit (master -> origin)
    λ git commit -m'添加了三个文件'
    [master 06bcd78] '添加了三个文件'
     3 files changed, 3 insertions(+)
     create mode 100644 file1.txt
     create mode 100644 file2.txt
     create mode 100644 file3.txt
    

      

      

  • 相关阅读:
    Mysql 中的日期时间字符串查询
    PyQt5中的信号与槽,js 与 Qt 对象之间互相调用
    vue学习初探
    【Java】JDBCUtil模板
    【明哥报错簿】之【 "javax.servlet.http.HttpServlet" was not found on the Java Build Path || HttpServletRequest/HttpServletResponse cannot be resolved to a type】
    【开发工具IDE】Eclipse相关配置
    【Java】JAVA开发人员常见环境工具安装
    【Java】自动获取某表某列的最大ID数
    【Java】全站编码过滤器GenericEncodingFilter代码与配置
    【Linux】无法将 Ethernet0 连接到虚拟网络“VMnet8”
  • 原文地址:https://www.cnblogs.com/Gaoqiking/p/11111411.html
Copyright © 2011-2022 走看看