美文网首页
GIT基本操作培训文档

GIT基本操作培训文档

作者: GEORGE_TIGER | 来源:发表于2020-03-11 22:43 被阅读0次

    GIT基本操作培训文档

    GIT是什么

    GIT下载地址

    GIT下载

    GIT安装

    • MAC
      • 在上面的地址下载对应的版本安装即可。在terminal下可以使用git命令.
    • Windows
      • 在上面的地址下载对应的版本安装,直接一路next使用默认配置即可。建议使用git bash进行操作。
    • Linux
      • apt-get or yum 直接安装

    GIT版本

    git --version

    GIT定义

    GIT是一个开源分布式的版本控制系统。
    分开理解一下:

    • 控制系统 简单来讲,GIT是一个内容跟踪系统。GIT用于内容的存放,最常用的是用于代码存放--但是GIT不止用于代码存放,其他文件甚至二进制文件也是可以存放的。
    • 版本控制系统 存放在GIT仓库中的代码是不断增加、修改或者删除的。多个开发者可能并行的进行相关操作。GIT会维护所有的操作历史记录。GIT提供了分支和合并这些重要特性。
    • 分布式 GIT有一个远端的仓库和一个本地仓库。本地仓库分布在每个开发者本地的电脑上。每个开发者本地的仓库包含所有的版本信息,开发者可以不依赖远端的服务器仓库以及其他开发者的本地仓库进行本地的GIT操作。

    GIT基本配置

    命令

    git config

    git config --global user.name "js150"

    配置全局用户名

    git config --global user.email "c855965344395@gmail.com"

    配置全局邮箱地址

    git config --list

    列出当前的配置

    配置文件

    > git config -e –-system
    
    系统配置文件
    
    > git config -e --global
    
    全局配置文件
    
    > git config -e
    
    库配置文件
    

    Git的三个配置文件读取优先级:库配置文件 > 全局配置文件 > 系统配置文件

    GIT基本概念

    GIT工作区

    [图片上传失败...(image-268ce9-1583937729917)]

    GIT文件类型

    • blob
      • 存放文件的内容
    • tree
      • 存放指向blob文件的文件名以及对应的目录结构
    • commit
      • git跟踪记录文件修改的元数据

    GIT基本操作

    帮助

    两种帮助:

    git [command] -h

    • 简单模式 比如要查看git commit的使用:git commit -h

    git [command] --help
    git help [command]

    • 完整模式 如上查看commit使用:git commit --help.(windows下默认会打开浏览器在浏览器中显示)

    建立仓库

    两种情况:

    git clone

    • 这是使用远程仓库的方式,也是我们目前使用代码库的主要工作方式。在使用我们git远程仓库代码时,首先需要clone一份到本地仓库。后续所有的git操作都要基于此本地仓库进行。

    git init

    • 这是使用本地仓库的创建方式。如果我们需要跟踪我们自己的文件,我们可以创建我们本地的仓库跟踪我们的文件修改。对于存在历史变更的文档,建议大家使用,但不是这里介绍的重点。

    提交代码

    • status

      git status

      应该经常使用,在commit之前先查看一下
      

      git diff

      在commit之前**一定**要先diff看看修改了哪些地方,是不是有些不应该提交的内容带进来了。
      
    • staging

      git add dome.txt

      staging一个文件

      git add file1 file2 file3

      可以同时staging几个文件

      git add *.php

      也可以一次staging一类文件

      git add .

      如果需要所有文件staging的话,可以使用此命令

    • commit

      git commit -m "Add new file."

      我们可以使用此命令将add到stage的文件commit到仓库中

      git commit -a -m"Modified file.".

      对于已经staging过的文件修改,我们可以使用commit -a参数,让git自动将所有staging的文件修改commit到仓库中

      git commit file1 file2 -m"Some modify."

      我们也能够选择部分被修改的文件进行提交。比如场景:在开发某个feature的过程中需要fix一个紧急bug,这时忘记了stash,修改完了发现之前的feature还没开发完,不能commit,因此只提交bug fix的文件。(不推荐这种做法,尽量先把没做完的stash后重新开始新的bug fix)

    • pull

      git pull

      从远端仓库将最新的代码更新到本地仓库

      git fetch; git rebase

      git pull = git fetch + git merge. git fetch只会拉去远端branch的代码到本地仓库,并不会更新到工作区,我们可以手动rebase,这样我们的HEAD就在最上面。推荐这种做法。

    • push

      git push origin master

    LOG查看

    • git log
      • 此命令异常强大,配合脚本,可以做很多有意思的事情
    • gitk
      • 图形方式的log查看,很直观的显示了各个分支的commit node关系

    分支管理

    git branch test

    创建一个test分支

    git checkout test

    创建一个分支后我们仍在之前的分支,比如master。如果需要到新的分支工作,我们需要先checkout创建的分支,此时工作区的文件内容为对应checkout分支的内容

    git checkout origin/master -b master

    这是我们实际操作代码库的时候常用命令,checkout远端仓库同时创建本地对应的分支。

    git branch

    查看本地存在哪些分支,如果需要查看远端服务器有哪些分支,可以加上参数git branch --remotes

    Merging

    git checkout master;git merge test

    运行如上两个命令后,将test分支的修改merge到master分支
    

    Remote

    git remote add origin [repository url]

    此命令将本地仓库指向远端仓库
    

    git push -u origin master

    此命令将本地仓库的内容推送到远端的master分支。实际工作中,一般本地的分支和远端分支是对应的,因此一般只需要进行git push操作就可以了
    

    冲突管理

    • 代码提交过程中很难避免出现冲突,如果出现冲突(什么时候出现?pull、merge、rebase),git会将有冲突的地方标识出来。
    • 我们可以手工fix这些冲突,也可以运行git mergetool命令调用工具处理冲突,git mergetool默认使用vimdiff来处理冲突。相关使用请参阅其他文档。

    相关文章

      网友评论

          本文标题:GIT基本操作培训文档

          本文链接:https://www.haomeiwen.com/subject/soukjhtx.html