• Git常用命令


    常用命令:

    git add .                              // 添加所有更新过的文件
    git commit -am "注释"                   // “提交”并加入 注释,注意这里代码仍然没有传上去
    git push origin Master                 // 将提交的代码推送到 git 上

    git log  //从最近到最远的显示日志,如果嫌上面显示的信息太多的话,我们可以使用命令 git log –pretty=oneline

    git reset  --hard HEAD^    //回退到上个版本,那么如果要回退到上上个版本只需把HEAD^ 改成 HEAD^^ 以此类推。那如果要回退到前100个版本的话,使用上面的方法肯定不方便,我们可以使用下面的简便命令操作:git reset  --hard HEAD~100 即可

    git reset --hard commit_id     退到/进到 指定commit的sha码

    git checkout  -- file //丢弃工作区的修改,reset是已经commit的,checkout是还未add的。-- 很重要,如果没有 -- 的话,那么命令变成创建分支了

    git checkout 命令加上 –b参数表示创建并切换,相当于如下2条命令

    git branch dev

    git checkout dev

    总结创建与合并分支命令如下:

      查看分支:git branch

      创建分支:git branch name

      切换分支:git checkout name

      创建+切换分支:git checkout –b name

      合并某分支到当前分支:git merge name

      删除分支:git branch –d name

     查看远程分支:git branch -a

    查看本地分支:git branch

    拉取远程分支到本地

    把远程分支拉到本地

    git fetch origin dev(dev为远程仓库的分支名)

    git fetch与git pull的区别

    git fetch:这将更新git remote 中所有的远程仓库所包含分支的最新commit-id, 将其记录到.git/FETCH_HEAD文件中
    git fetch更新远程仓库的方式如下:

    git fetch origin master:tmp 
    //在本地新建一个temp分支,并将远程origin仓库的master分支代码下载到本地temp分支
    git diff tmp 
    //来比较本地代码与刚刚从远程下载下来的代码的区别
    git merge tmp
    //合并temp分支到本地的master分支
    git branch -d temp
    //如果不想保留temp分支 可以用这步删除

    (1)如果直接使用git fetch,则步骤如下:

    • 创建并更新本 地远程分支。即创建并更新origin/xxx 分支,拉取代码到origin/xxx分支上。
    • 在FETCH_HEAD中设定当前分支-origin/当前分支对应,如直接到时候git merge就可以将origin/abc合并到abc分支上。

    (2)git fetch origin
    只是手动指定了要fetch的remote。在不指定分支时通常默认为master
    (3)git fetch origin dev
    指定远程remote和FETCH_HEAD,并且只拉取该分支的提交。

    git pull : 首先,基于本地的FETCH_HEAD记录,比对本地的FETCH_HEAD记录与远程仓库的版本号,然后git fetch 获得当前指向的远程分支的后续版本的数据,然后再利用git merge将其与本地的当前分支合并。所以可以认为git pull是git fetch和git merge两个步骤的结合。
    git pull的用法如下:

    git pull <远程主机名> <远程分支名>:<本地分支名>
    //取回远程主机某个分支的更新,再与本地的指定分支合并。

    因此,与git pull相比git fetch相当于是从远程获取最新版本到本地,但不会自动merge。如果需要有选择的合并git fetch是更好的选择。效果相同时git pull将更为快捷。

  • 相关阅读:
    【matlab】meshgrid生成网格原理1
    【Matlab】matlab与matplotlib作图比较
    【信号、图像、Matlab】如何得到高斯滤波器的整数模板
    【GPS】如何理解轨道倾角大于90
    【Matlab】图像裁剪函数imcrop的原点、长度、宽度问题
    【Matlab】函数imread的返回值
    【GPS】批量将d文件转换为o文件
    【GPS】d文件转换为o文件
    【GPS】IGS数据下载
    [ubuntu]截图快捷键
  • 原文地址:https://www.cnblogs.com/twoheads/p/9510503.html
Copyright © 2020-2023  润新知