美文网首页
git的使用和git的架构理解

git的使用和git的架构理解

作者: 苦庭 | 来源:发表于2020-03-25 16:26 被阅读0次

    Gitlab's command line instruction

    image.png

    此处是在git中上传代码到github中Repository的命令

    1、在对git进行上传之前,必须先进行build(项目打包),这样才能够产生dist文件夹(dist=distant,里面是编译过适合远程部署的文件)

    执行$ npm run build

    2、将打包好的文件上传到git

    git init // 初始化本地仓库 
    // 获取一个 Git 仓库有2中方法:1.本地初始化一个仓库 2.从远程克隆一个仓库到本地 git clone <SSH/HTTP git repo>
    
    git add .  // 后面接一个点,表示将全部文件添加到暂存区
    
    git commit -m 'init vue project'
    
    ~~GOOD~~ git remote add origin https://swanf.github.io/vue-pizza-app.git // 用https协议访问仓库
    
    ~~BAD~~ git remote add origin git@github.com:Rain120/demo.git // 通过git@来访问github已经过时,现在应该用https了
    
    git pull origin master --allow-unrelated-histories
    
    git push -u origin master
    
    

    (原文在这里)

    可以按照上面的,也可以用vs code的git插件,进行先commit后push。看后面的原理图,弄懂了原理就不必纠结于某句代码了。

    image.png

    上图展示了git的整体架构,以及和各部分相关的主要命令。先说明下其中涉及的各部分。

    工作区(working directory),简言之就是你工作的区域。对于git而言,就是的本地工作目录。工作区的内容会包含提交到暂存区和版本库(当前提交点)的内容,同时也包含自己的修改内容。

    暂存区(stage area, 又称为索引区index),是git中一个非常重要的概念。是我们把修改提交版本库前的一个过渡阶段。查看GIT自带帮助手册的时候,通常以index来表示暂存区。在工作目录下有一个.git的目录,里面有个index文件,存储着关于暂存区的内容。git add命令将工作区内容添加到暂存区。

    本地仓库(local repository),版本控制系统的仓库,存在于本地。当执行git commit命令后,会将暂存区内容提交到仓库之中。在工作区下面有.git的目录,这个目录下的内容不属于工作区,里面便是仓库的数据信息,暂存区相关内容也在其中。这里也可以使用merge或rebase将远程仓库副本合并到本地仓库。图中的只有merge,注意这里也可以使用rebase。

    远程版本库(remote repository),与本地仓库概念基本一致,不同之处在于一个存在远程,可用于远程协作,一个却是存在于本地。通过push/pull可实现本地与远程的交互;

    远程仓库副本,可以理解为存在于本地的远程仓库缓存。如需更新,可通过git fetch/pull命令获取远程仓库内容。使用fech获取时,并未合并到本地仓库,此时可使用git merge实现远程仓库副本与本地仓库的合并。git pull 根据配置的不同,可为git fetch + git merge 或 git fetch + git rebase。rebase和merge的区别可以自己去网上找些资料了解下。

    看到这里,不仅清楚了 git fetch 与 git pull。而且我们使用每个命令时,也能清楚的明白此时git做了什么工作。

    (原文在这里)

    相关文章

      网友评论

          本文标题:git的使用和git的架构理解

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