GIT 版本控制

前言:摘录了部分笔记,以便日常查询,如果有谁有其他需求的可以私聊笔者添加

第一章 Shell和vi

bash

  1. bash 命令格式
    命令 [-options] [参数],如:tar zxvf demo.tar.gz
    查看帮助:命令 --help
  2. bash 常见命令
    pwd (Print Working Directory) 查看当前目录
    cd (Change Directory) 切换目录,如 cd /etc
    ls (List) 查看当前目录下内容,如 ls -al
    mkdir (Make Directory) 创建目录,如 mkdir blog
    touch 创建文件,如 touch index.html
    cat 查看文件全部内容,如 cat index.html
    more/less 查看文件,如more /etc/passwd、less /etc/passwd
    rm (remove) 删除文件,如 rm index.html、rm -rf blog
    rmdir (Remove Directory) 删除文件夹,只能删除空文件夹,不常用
    mv (move) 移动文件或重命名,如 mv index.html ./demo/index.html
    cp (copy) 复制文件,cp index.html ./demo/index.html
    head 查看文件前几行,如 head -5 index.html
    tail 查看文件后几行 –n –f,如 tail index.html、tail -f -n 5 index.html
    tab 自动补全,连按两次会将所有匹配内容显示出来
    history 查看操作历史
    >>>重定向,如echo hello world! >README.md,>覆盖 >>追加
    wget 下载,如wgethttps://nodejs.org/dist/v4.4.0/node-v4.4.0.tar.gz
    tar 解压缩,如tar zxvf node-v4.4.0.tar.gz
    curl 网络请求,如curl http://www.baidu.com
    whoami 查看当前用户
    | 管道符可以将多个命令连接使用,上一次(命令)的执行结果当成下一次(命令)的参数。
    grep 匹配内容,一般结合管道符使用

第二章 版本控制

第三章 GIT

Git远程(共享)仓库

  1. 创建共享仓库
    Git要求共享仓库是一个以.git结尾的目录。
    mkdir repo.git 创建以.git结尾目录
    cd repo.git 进入这个目录
    git init --bare 初始化一个共享仓库,也叫裸仓库 注意选项–bare

  2. 向共享仓库共享(同步)内容
    git push …/repo.git master

  3. 从共享仓库里取出内容
    git clone ./repo.git demo

GitHub

远程地址特别长,我们可以给他起一个别名
git remote add origin git@github.com:Botue/repo.git
这样origin 就代表 git@github.com:Botue/repo.git
生成秘钥
ssh-keygen -t rsa 然后一路回车,这里会在当前用户生成了一个.ssh的文件夹

命令汇总

git config配置本地仓库
常用git config --global user.name、git config --global user.email
git config --list查看配置详情
git init 初始一个仓库,添加–bare可以初始化一个共享(裸)仓库
git status 可以查看当前仓库的状态
git add“文件” 将工作区中的文件添加到暂存区中,其中file可是一个单独的文件,也可以是一个目录、“*”、-A
git commit -m ‘备注信息’ 将暂存区的文件,提交到本地仓库
git log 可以查看本地仓库的提交历史
git branch查看分支
git branch“分支名称” 创建一个新的分支
git checkout“分支名称” 切换分支
git checkout -b deeveloper 他健并切到developer分支
git merge“分支名称” 合并分支
git branch -d “分支名称” 删除分支
git clone “仓库地址”获取已有仓库的副本
git push origin “本地分支名称:远程分支名称”将本地分支推送至远程仓库,
git push origin hotfix(通常的写法)相当于
git push origin hotfix:hotfix
git push origin hotfix:newfeature
本地仓库分支名称和远程仓库分支名称一样的情况下可以简写成一个,即git push “仓库地址” “分支名称”,如果远程仓库没有对应分支,将会自动创建
git remote add “主机名称” “远程仓库地址”添加远程主机,即给远程主机起个别名,方便使用
git remote 可以查看已添加的远程主机
git remote show “主机名称”可以查看远程主机的信息

GIT高级

gitignore忽略文件

在项目根目录下创建一个.gitignore文件,可以将不希望提交的罗列在这个文件里,如项目的配置文件、node_modules等
https://github.com/github/gitignore

比较差异

当内容被修改,我们无法确定修改哪些内容时,可以通过git diff来进行差异比较。
git difftool 比较的是工作区和暂存的差异
git difftool “SHA”比较与特定提交的差异
git difftool “SHA”“SHA”比较某两次提交的差异
git difftool 分支名称 比较与某个分支的差异

回滚(撤销)操作

HEAD 默认指向当前分支的“末端”,即最后的一次提交,但是我们通过git reset 可以改变HEAD的指向。
看情况解释(稍微复杂一些,理解就好)
1、git reset
–hard 工作区会变、历史(HEAD)会变, 暂存区也变
–soft 只会变历史(HEAD)
–mixed(默认是这个选项)历史(HEAD)会变、暂存区也变,工作区不变
2、git checkout
git checkout SHA – “某个文件”,代表只是从SHA这个版中取出特定的文件,
和git reset 是有区别的,reset 重写了历史,checkout 则没有。

更新仓库

在项目开发过程中,经常性的会遇到远程(共享)仓库和本地仓库不一致,我们可以通过git fetch 命令来更新本地仓库,使本地仓库和远程(共享)仓库保持一致。
git fetch “远程主机”
或者
git fetch “远程主机” “分支名称”
我们要注意的是,利用git fetch 获取的更新会保存在本地仓库中,但是并没有体现到我们的工作目录中,需要我们再次利用git merge来将对应的分支合并(融合)到特定分支。如下
git pull origin 某个分支, 上操作相当于下面两步
git fetch
git merge origin/某个分支
问题:如何查看远程主机上总共有多少个分支?
git branch -a 便可以查看所有(本地+远程仓库)分支了

其它

删除远程分支git push origin --delete 分支名称
删除远程分支git push origin :分支名称

平常用到的指令并不是很多,会在实际开发中以实例体现出来,文章持续更新

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值