zoukankan      html  css  js  c++  java
  • git命令

    使用指南:https://www.bootcss.com/p/git-guide/

    github登录地址:https://github.com/login

    2020,05,15shh和http的区别

    1.clone项目:使用ssh方式时,首先你必须是该项目的管理者或拥有者,并且需要配置个人的ssh key。而对于使用https方式来讲,就没有这些要求。

    2.push:在使用ssh方式时,是不需要验证用户名和密码,如果你在配置ssh key时设置了密码,则仅需要验证配对密码。而对于使用https方式来讲,每次push都需要验证用户名和密码。

    github添加密钥

      1>右键空白处,选择Git Bash Here

      2>执行命令: ssh-keygen -t rsa 生成公钥和密钥

      3>执行命令完成后,默认会在window本地用户.ssh目录C:Users用户名.ssh下面生成公钥和私钥

      4>密钥生成后需要在github上配置密钥本地才可以顺利访问,点击右上角的头像,选择Settings

      5>点击SSH and GPG keys,点击右侧的New SSH key

          在Title处给该公钥取个名称,在Key部分将id_rsa.pub文件内容添加进去,然后点击“Add SSH key”按钮完成配置。

    常用git命令:

    一、如果是新建项目:

    1、将项目内容放到文件夹下面,执行:git init、git add、git commit

    2、在github创建一个项目;

    3、将本地仓库关联到github上:git remote add origin ssh地址

    4、上传到github上:git push origin  本地分支:远程分支

    二、如果是已有项目

    下载工程  git clone   *******

          git clone   -b   分支名   *******

    备注:

    git克隆基本上是一个组合:

    > git init(创建本地存储库)
    > git remote add(将URL添加到该存储库)
    git fetch(从该URL中获取所有分支到本地存储库)
    git checkout(创建工作树中主分支的所有文件)

    因此不必执行git init,因为它已经由git clone完成。

    三、其他命令

    1、查看已有的本地及远程分支  git branch -a

    2、提交代码

       提交到缓存区  git  add  文件

       提交到仓库区  git commit -m 'msg'

    4、创建自己的分支  git checkout -b    ********

       并推送到远程,         git push origin  *******:*********  

    如果远程没有该分支则会自动创建 如果推个空分支(git push origin  :***)则会删除远程分支,

    5、删除远程分支 

         git push origin -d    不能删除默认分支(想删除远程的master必须将默认分支切换到其他分支)

      删除本地分支:git branch -d  ****

    6、切换分支     git checkout  *****

    7、拉取指定分支代码到本地   git pull origin  *******

    8、查看历史版本:git log     (显示简单的历史版本信息:git log --oneline)

    9、切换版本:git reset  --hard 版本号

     四、其他场景

    ~~本地删除了文件a,但是master上还有a,git pull origin master时发现本地没有a(适用于所有本地修改文件,然后pull的操作

    解决办法:git  stash  将本地的改变先储存起来,然后再执行  git pull origin master

    其他参考:https://blog.csdn.net/qq_36898043/article/details/79431168

    git stash:备份当前工作区的内容,保存到git 栈中,从最近的一次commit中读取相关内容   
    git stash pop:从git栈中获取到最近一次stash进去的内容,恢复工作区的内容。获取之后,会删除栈中对应的stash。
    由于可能会stash多次,git使用栈管理,我们可以使用git stash list查看所有的stash

    五、.gitignore文件语法

    1.在需要创建 .gitignore 文件的文件夹, 右键选择Git Bash 进入命令行,进入项目所在目录。
    2.输入 touch .gitignore ,生成“.gitignore”文件。
    3.在”.gitignore” 文件里输入你要忽略的文件夹及其文件就可以了。(注意格式)

    场景:通常有些内容是不需要上传git

    #注释           .gitignore的注释
    *.txt           忽略所有 .txt 后缀的文件
    !src.a          忽略除 src.a 外的其他文件
    /todo           仅忽略项目根目录下的 todo 文件,不包括 src/todo
    build/          忽略 build/目录下的所有文件,过滤整个build文件夹;
    doc/*.txt       忽略doc目录下所有 .txt 后缀的文件,但不包括doc子目录的 .txt 的文件
     
    bin/:           忽略当前路径下的 bin 文件夹,该文件夹下的所有内容都会被忽略,不忽略 bin 文件
    /bin:           忽略根目录下的 bin 文件
    /*.c:           忽略 cat.c,不忽略 build/cat.c
    debug/*.obj:    忽略debug/io.obj,不忽略 debug/common/io.obj和tools/debug/io.obj
    **/foo:         忽略/foo, a/foo, a/b/foo等
    a/**/b:         忽略a/b, a/x/b, a/x/y/b等
    !/bin/run.sh    不忽略bin目录下的run.sh文件
    *.log:          忽略所有 .log 文件
    config.js:      忽略当前路径的 config.js 文件
     
    /mtk/           忽略整个文件夹
    *.zip           忽略所有.zip文件
    /mtk/do.c       忽略某个具体文件

    六、merge

    1、场景1

    本地1修改了内容并对远程分支进行了push操作;

    本地2修改了内容并对远程分支进行了push操作;

    这个时候,本地2在push时会报错;

    解决办法:先pull,然后手动修改内容,再 git add、git commit、git push如下截图

  • 相关阅读:
    使用POI读写Word doc文件
    用纯css改变下拉列表select框的默认样式
    深入探究JFreeChart
    arcgis api for javascript中使用proxy.jsp
    【Itext】7步制作Itext5页眉页脚pdf实现第几页共几页
    iText5报表_页眉与页脚
    JFreeChart柱状图单组柱子的不同颜色显示
    如何自定义FusionCharts图表上的工具提示?
    span 文本内容超过宽度自动换行
    JS正则表达式验证账号、手机号、电话和邮箱
  • 原文地址:https://www.cnblogs.com/yinwenbin/p/11469924.html
Copyright © 2011-2022 走看看