美文网首页
Git相关命令整理

Git相关命令整理

作者: a丶逍遥子 | 来源:发表于2018-06-10 11:55 被阅读0次

    window 默认输入的账户和密码第一次输错,直接修改凭证

    控制面板->所有控制面板项->用户账号->管理你的凭证
    ->Windows凭证->普通凭证列->编辑即可
    

    window下面idea终端乱码问题解决

    打开git/etc/bash.bashrc文件,末尾增加如下两行:
    export LC_ALL="zh_CN.UTF-8"
    export LANG="zh_CN.UTF-8"
    idea终端选择Git\bin\bash.exe
    idea版本控制选择Git\bin\git.exe
    

    Git全局设置

    git config --global user.name "dongliyang"
    git config --global user.email "dongliyang@quandashi.com"
    

    指定远程主机

    git push -u origin master
    上面命令将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了
    

    增加远程主机

    git init
    git remote add origin http://git.quandashi.cn/dongliyang/phoenix-task.git
    git add .
    git commit -m "Initial commit"
    git push -u origin master
    

    修改主机名称

    git remote rename origin old-origin
    

    推送所有

    git push -u origin --all
    git push -u origin --tags
    

    推送当前分支并绑定为远程分支

     git push --set-upstream origin test_new_0719
    

    Https永久记住密码

    永久记住密码: git config --global credential.helper store
    会在用户主目录的.gitconfig文件中生成下面的配置。
    [credential]
        helper = store
    如果没有--global,则在当前项目下的.git/config文件中添加。
    当然,你也可以直接复制上面生成的配置到配置文件中。
    

    Https临时记住密码

    默认记住15分钟:
    git config –global credential.helper cache
    下面是自定义配置记住1小时:
    git config credential.helper ‘cache –timeout=3600’
    

    git rebase使用总结

    git rebase -i [startpoint] [endpoint]
    其中-i的意思是–interactive,即弹出交互式的界面让用户编辑完成合并操作,[startpoint] [endpoint]则指定了
    一个编辑区间,如果不指定[endpoint],则该区间的终点默认是当前分支HEAD所指向的commit(注:该区间指
    定的是一个前开后闭的区间,开区间(a,b)不包含了两边)
     // 合并从当前head到15f745b(commit id)
    git rebase -i 15f745b
    // 合并最近的两次提交
    git rebase -i HEAD~2
    注释:
    pick:保留该commit(缩写:p)
    reword:保留该commit,但我需要修改该commit的注释(缩写:r)
    edit:保留该commit, 但我要停下来修改该提交(不仅仅修改注释)(缩写:e)
    squash:将该commit和前一个commit合并(缩写:s)
    fixup:将该commit和前一个commit合并,但我不要保留该提交的注释信息(缩写:f)
    exec:执行shell命令(缩写:x)
    drop:我要丢弃该commit(缩写:d)
    最后保存强推:git push -f|force(不建议生产预发布环境使用强推)
    

    合并其他几次中间分支到master

    image.png

    这张图所描述的这样,将 develop 分支中的 C~E 部分复制到 master 分支中去。
    这时我们就可以用 git rebase 命令来实现了。

    • 命令说明
    // startpoint 第一个 commit id, endpoint 最后一个 commit id,branchName 就是目标分支了。
    $ git rebase [startpoint] [endpoint] --onto [branchName]
    
    如:
      git rebase C  F --onto master
      执行 git rebase 命令之后,我们发现当前的 HEAD 处于游离状态。
      git checkout master
      所以我们需要使用 git reset 命令,将 master 所指向的 commit id 设置为当前 HEAD 所指向的 commit id。 
      git reset --hard F
    

    相关文章

      网友评论

          本文标题:Git相关命令整理

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