zoukankan      html  css  js  c++  java
  • Git 入门

    写在前面:本文所有系统为 OS X

    环境配置

    首先,在 terminal 终端检查是否安装 Git : git --version,安装成功的提示如下:

    然后,设置git的两个基本信息:用户名和邮箱

    #设置用户名和邮箱
    git config --global user.name "xxx(用户名)"
    git config --global user.email "xxxx(邮箱地址)"
    

    设置完成后,可以使用atom 编辑器打开 atom ~/Users/你的用户名/.gitconfig,查看效果.

    基本操作流程和常用命令

    新建一个文件夹: mkdir Demo
    打开新建的文件夹: cd Demo
    初始化git工厂: git init
    新建文件: touch a.txt
    向该文件中添加内容: echo vvvv > a.txt
    将该文件添加给git: git add a.txt
    将该文件提交到git工厂: git commit -m "first" (其中-m 代表 message,后面引号内容是对此次提交的描述)
    通过git日志,查看提交结果: git log

    git 版本控制原理(四种文件状态)

    git的文件有四种状态

    • Untracked
    • Unmodified
    • Modified
    • Staged

    可以使用 git status 查看当前文件的状态
    以文件a.txt为例,说明四种状态:
    Untracked : 文件a.tx刚被创建,未执行 git add a.txt之前.
    Staged: 执行 git add a.txt之后
    Unmodified : 执行 git commi -m "first" 之后
    Modified: 已经完成上述操作后, 再对 a.txt 做更改, a.txt 文件状态变为 modified

    Unmodified 状态转换为 Untracked 状态: git rm --cached a.txt

    注意: 只有 Staged 状态才能 commit到版本库中,如果是 Modified 状态,需要先通过add将其设置为 Staged 状态

    git 四个常用组件

    • Tag
    • Commit
    • Tree
    • Blob

    git 的每个组件是根据文件内容生成hash的二进制,其中hash的前两位为组件的文件夹名,剩余位数为文件名.
    Blob : 在文件状态变为 Staged 时候生成的
    Tree : git commit -m "first" 之后, 马上创建一个 tree 组件,把需要的 blob 组件添加进去
    Commit : tree 组件封装到 commit 组件中,完成本次提交

    git 分支

    创建分支: git branch 分支名
    切换分支: git checkout 分支名
    创建并切换分支: git checkout -b 分支名
    合并分支: git merge 要合并的分支
    删除分支: git branch -d 分支名
    在a分支新建一个分支: git checkout -b 新分支 指定分支a

    附加
    在 .gitconfig 中进行以下配置,可以简写输入的命令:

    [alias]
        lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
        co = commit
        st = status -s
    
    

    git status -s : 以精简的方式显示文件状态, s代表short
    git log --pretty=oneline : 格式良好的输出日志

    参考资料:

    1. 孔浩git入门系列
    2. 视频配套资料
    3. 在Github的README.md中显示一张图片
  • 相关阅读:
    异步编程
    MVC返回文件
    MVC源码分析
    MVC源码分析
    MVC源码分析
    MVC源码分析
    MVC源码分析
    MVC源码分析
    MVC源码分析
    MVC源码分析
  • 原文地址:https://www.cnblogs.com/linkworld/p/7401409.html
Copyright © 2011-2022 走看看