Git 常用命令学习

Posted xiaoyao-dafei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git 常用命令学习相关的知识,希望对你有一定的参考价值。

本人文笔太次,主要以学习为目的,请大家不必太认真!

1:创建github 账号(百度一堆教程)

2:下载安装git(百度一堆教程)

3:我们都知道版本管理有git svn cvs等等,这里我们先不说cvs,与svn差不多,简单说一下git与svn的却别,先来看一张图

技术图片

上面的svn的操作流程,下面的是git的操作流程,可以看出git稍微繁琐一些;那么,他俩又哪些不同呢?

GIT 与 svn 主要区别

  • 存储方式不一样:GIT把内容按元数据方式存储类似k/v数据库,而SVN是按文件(新版svn已改成元数据存储)。
  • 使用方式不一样:从本地把文件推送远程服务,SVN只需要commint 而GIT需要 add、commint、push 三个步骤。
  • 管理模式不一样:git 是一个分布式的版本管理系统,而要SVN是一个远程集中式的管理系统。

 技术图片

技术图片

接下来 我们开始git的流程学习!

a:GIT的基本使用;(假设 GitHub 已经创建好,git客户端安装完成)

        1:创建一个项目:创建一个文件夹,进入即可;

        2:git初始化:git init;

        3:创建一个文件写入内容:echo ‘this is git 1‘ >> README.MF;

        4:添加到暂存区:git add  <filename>/-A(全部添加); 例:git add  README.MF / git add -A;

        5:提交到本地资源库:git commit <filename>/-A(提交全部)   m (注释) ‘‘,例:git commit   README.MF -m ‘commit 1‘ / git commit   -am  ‘commit 1‘;

        6:推送到远程:git push

                                  a:如果第一次需要 先 关联到远程仓库:git remote add origin https://github.com/sishen001/gitest.git;

                                  b:第一次需要关联账号需要先做关联:git config --global user.name "git 账号" ;git config --global user.email "[email protected]";

                                  c:第一次需要关联远程分支:git push --set-upstream origin master;意思是关联本地分支 origin与远程分支master;

        7:查看当前分支:git branch   (查看本地分支);git branch -avv (查看所有分支明细)

        8:创建分支:git branch dev;

        9:基于分支创建分支:git branch testBranchName  dev;基于 dev  创建分支;

        10:删除分支:git branch -d  <branch name>; 切换分支:git checkout <branch name>

        11:删除远程分支:git remote remove origin2;

        12:创建tag:git tag testtag dev;基于dev分支创建testtag tag;

        13:查看tag:git tag;

        14:查看所有提交日志:git log;

        15:克隆远程仓库:git clone <url>

        16:更新:git pull;

        17:查看 当前文件状态:git status;

        18:查看远程仓库:git remote -v;

        19:分支合并:git merge <target branch>;将指定分支合并到当前分支;

        20:分支比对:git log dev..master  master 有多少没有同步到dev中;

        21:查看提交网络:git log --graph --online;

        22:展示分支最后一次提交明细:git show <branch name>;

        23:查询objects 下所有的文件:find .git/objects/ -type f

        24: 查看值 根据存储的内容key:git cat-file -p key;

        25:版本回滚  回退到指定版本:git cat-file -p <key>  README.MF;

        26:git 存储二进制的对象类型;git cat-file -t  <key>;

        27:查看树对象:git cat-file -p master ^{tree};

        28:查看commit 对象:git log master;

分支与回退:git 分支就是多了一个引用指向(指向每个对象); git 回滚 就是更改了之前的引用(对象)而已;一个提交就是一个commit 对应一个值(值对象);

对象:git 本身存储结构 是 key-value 形式,比如说你创建了一个文件,那么系统会把这个文件内容根据hash算法得到一个唯一的key ,那么这个key就是这个文件的对象,

          也就是说,我只要知道这个key,那么我就知道了这个文件;只要文件内容作了改变,那么这个key一定会变;

还有很多没说到的,比如说,git底层存储结构是怎样的,企业一般怎么搭建git服务等等,我会抽时间在追加上,目前这些已经可以完成对git的操作使用啦。

 

以上是关于Git 常用命令学习的主要内容,如果未能解决你的问题,请参考以下文章

Git常用命令学习笔记

Git 常用命令学习

Git版本控制软件结合GitHub从入门到精通常用命令学习手册

Git_学习_01_ Git常用命令

git常用命令学习

Git学习笔记--常用命令