zoukankan      html  css  js  c++  java
  • Git 常用指令

    初始化本地仓库
    git init

    项目签名

    git config [--global] user.name "wm"
    #设置配置信息 提交用户的名称 wm,--global表示全局设置
    
    git config [--global] user.email 15804854160@163.com
    #设置配置信息 提交用户的邮箱
    暂存标记
    git add <文件名>

    获取版本id

    git reflog

    版本还原

    git checkout -- <文件名>
    #还原指定的文件为最后一次提交的版本
     
    建立本地分支并与远程分支关联
    git checkout -b dev origin/dev
     
    关联本地和远程分支
    git branch --set-upstream-to=origin/dev
    提交代码
    git commit -a -m "message"

    -a 参数表示,可以将所有已跟踪文件中的执行修改或删除操作的文件都提交到本地仓库,即使它们没有经过git add添加到暂存区。

    注意,新加的文件(即没有被git系统管理的文件)是不能被提交到本地仓库的。建议一般不要使用-a 参数,正常的提交还是使用git add先将要改动的文件添加到暂存区,再用git commit 提交到本地版本库。

    追加提交

    git commit --amend

    在不增加一个新的commit-id的情况下将新修改的代码追加到前一次的commit-id中。

    1)假如现在版本库里最近的一版正是我们想要追加进去的那版,此时是最简单的,直接修改工作区代码,然后git add,之后就可以直接进行git push到服务器,中间不需要进行其他的操作如git pull等。

    2)如果现在版本库里最近的一版不是我们想要追加进去的那版,那么此时我们需要将版本库里的版本回退到我们想要追加的那一版。

    2.1> 第一种,如果我们知道我们需要的版本与现在最近的版本中间隔着 n 个提交,那么我们可以直接使用git reset --hard HEAD~n 命令,执行完后运行git log -1 命令我们会发现现在版本库里最近的一版就是我们需要的那版,此时再在工作区直接修改代码,改完之后进行git add,再执行本git commit --amend命令,之后git push。

    2.2> 第二种,如果我们不知道我们需要的版本与现在最近的版本中间隔着 n 个提交,那么我们可以使用git log来查看版本库中的commit-id,找到我们需要的commit-id后,在终端中执行git reset --hard commit-id,执行完后运行git log -1 命令我们会发现现在版本库里最近的一版就是我们需要的那版,此时再在工作区直接修改代码,改完之后进行git add,再执行本git commit --amend命令,之后git push。

    dev分支合并到master并提交

    git branch    //查看当前版本
    git checkout dev  // 如果当前在dev分支上面 则不用执行 如果不在dev 则执行
    git pull   // 拉取最新的代码
    git checkout master  //切换到master分支上面
    git pull  //确保最新的代码
    git merge dev  //将dev分支上面的代码合并到master
    git push origin master // 推送到远程master仓库

    查看帮助

    git commit --help

    撤销commit

    转自:https://blog.csdn.net/w958796636/article/details/53611133


    写完代码后,我们一般这样

    git add . //添加所有文件

    git commit -m "本功能全部完成"

    执行完commit后,想撤回commit,怎么办?


    这样凉拌:

    git reset --soft HEAD^

    这样就成功的撤销了你的commit

    注意,仅仅是撤回commit操作,您写的代码仍然保留。
    说一下个人理解:
    HEAD^的意思是上一个版本,也可以写成HEAD~1
    如果你进行了2次commit,想都撤回,可以使用HEAD~2

    至于这几个参数:
    --mixed
    意思是:不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
    这个为默认参数,git reset --mixed HEAD^ 和 git reset HEAD^ 效果是一样的。

    --soft
    不删除工作空间改动代码,撤销commit,不撤销git add .

    --hard
    删除工作空间改动代码,撤销commit,撤销git add .

    注意完成这个操作后,就恢复到了上一次的commit状态。


    顺便说一下,如果commit注释写错了,只是想改一下注释,只需要:

    git commit --amend

    此时会进入默认vim编辑器,修改注释完毕后保存就好了。

  • 相关阅读:
    圆圈中最后剩下的数字 【微软面试100题 第十八题】
    第一个只出现一次的字符 【微软面试100题 第十七题】
    从上往下打印二叉树 【微软面试100题 第十六题】
    二叉树的镜像 【微软面试100题 第十五题】
    和为s的两个数字 【微软面试100题 第十四题】
    链表中倒数第k个结点 【微软面试100题 第十三题】
    求1+2+...+n 【微软面试100题 第十二题】
    求二叉树中结点的最大距离 【微软面试100题 第十一题】
    翻转句子中单词的顺序 【微软面试100题 第十题】
    二叉搜索树的后序遍历序列 【微软面试100题 第九题】
  • 原文地址:https://www.cnblogs.com/maruko/p/11981530.html
Copyright © 2011-2022 走看看