• linux、git bash如何生成ssh key


    1.Centos安装及配置

    $ yum install -y git

    2.生成ssh-key

    # 生成ssh key,公钥添加到gitlab,用于账号认证。生成过一次就不需要再次生成了。
    $ ssh-keygen
    # 运行命令后,按3次回车即可
     
     
    # 拷贝公钥文件
    $ cat ~/.ssh/id_rsa.pub

    3.clone仓库

    # 克隆仓库
    $ git clone <url>

    4.配置

    #配置用户信息(邮箱用公司邮箱)
    $ git config --global user.name <username>
    $ git config --global user.email <email>

    5.增加/删除文件

    # 添加文件到暂存区
    $ git add <file1> <file2>
     
    # 添加目录到暂存区
    $ git add <dir>
     
    # 添加当前目录下所有已修改和未跟踪文件到暂存区
    $ git add .
     
    # 删除文件,同时删除本地和暂存区文件
    $ git rm <file>
     
    # 将文件从暂存区删除,保留工作区文件
    $ git rm --cached/staged <file>
     
    # 重命名文件
    $ git mv <file> <file-new>
    
    # 忽略原来未改变的文件权限
    $ git config --add core.filemode false
    $ git checkout vendor/
    

    6.提交代码

    # 提交暂存区内容到本地仓库
    $ git commit -m <"message">
     
    # 跳过暂存区,提交本地所有修改到本地仓库(不包含新添加的文件)
    $ git commit -am <"message">
     
    # 追加提交,上一次修改漏提了一个文件
    # 如果上一次提交后代码没有变化,此命令可以改写上一次的提交日志
    $ git commit --amend -m <"message">

    7.分支

    # 列出所有本地分支,"*"号开头的为当前分支
    $ git branch
     
    # 列出所有远程分支
    $ git branch -r
     
    # 列出所有本地分支和远程分支
    $ git branch -a
     
    # 切换分支
    $ git checkout <branch_name>
     
    # 以本地分支当前状态,新建分支并检出该新分支(未提交的修改也将带到新分支)
    $ git checkout -b <branch_name>
     
    # 以远程分支新建本地分支,检出该分支,并和远程分支建立跟踪关系
    $ git checkout -b <branch_name> <remote_name>/<remote_branch>
    # 例如: git checkout -b FEA/BUG-002 origin/FEA/BUG-002
     
    # 切换到上一个分支
    $ git checkout -
     
    # 建立当前分支与远程分支的跟踪关系
    $ git branch --set-upstream-to=<remote_name>/<branch_name>
    # 例如: git branch --set-upstream-to=origin/develop
     
    # 合并本地分支到当前分支
    $ git merge <branch_name>
     
    # 合并远程分支到当前分支
    # 合并前,先要执行git pull/fetch
    $ git merge <remote_name>/<branch_name>
     
    # 删除本地分支(只能删除已合并分支)
    $ git branch -d <branch_name>

    8.标签

    # 列出所有tag
    $ git tag
     
    # 从指定commit新建tag
    $ git tag <tag_name> <commit>
     
    # 删除本地tag
    $ git tag -d <tag_name>
     
    # 推送指定tag
    $ git push <remote_name> <tag_name>
     
    # 推送所有tag
    $ git push --tags <remote_name>
     
    # 以指定tag新建分支
    $ git checkout -b <branch_name> <tag_name>

    9.远程同步

    # 下载所有远程仓库更新
    $ git fetch <remote_name>
    # 例如: git fetch origin
     
    # 显示远程仓库地址
    $ git remote -v
     
    # 显示指定远程仓库信息,包括有哪些远程分支等
    $ git remote show <remote_name>
     
    # 添加远程仓库
    $ git remote add <remote_name> <url>
     
    # 清理远程分支
    $ git remote prune <remote_name>
    # 如果远程仓库删除了某些分支,此命令会将远程分支从本地列表中删除
     
    # 拉取远程仓库指定分支的更新,并合并到当前分支
    $ git pull <remote_name> <branch_name>
    # 例如: git pull origin master
    # 此命令会拉取origin仓库所有更新,并合并最新远程master到当前分支
     
    # 推送本地分支到远程仓库
    $ git push <remote_name> <branch_name>
    # 例如: git push origin master
    # 此命令推送当前master分支到远程仓库
     
    # 推送所有分支到远程仓库
    $ git push --all <remote_name>

    10.撤销

    # 取消工作区文件的修改
    $ git checkout -- <file>
     
    # 将指定文件从暂存区撤出
    $ git reset -- <file>

    11.设置忽略列表

    # 新建一个名为.gitignore文件,可将此文件提交到git仓库,语法如下:
    *~             #忽略所有以波浪号(~)结尾的文件
    *.a            #忽略所有以.a结尾的文件
    !lib.a         #但lib.a除外
    /TODO          #仅忽略项目根目录下的TODO文件,不包含subdir/TODO
    build/         #忽略build/目录下的所有文件
    doc/*.txt      #忽略doc/notes.txt,但不包括doc/server/arch.txt
  • 相关阅读:
    js获取当前页面url网址等信息
    jQuery 复选框全选/取消全选/反选
    js获取日期实例之昨天今天和明天、后天
    mysql不重启修改参数变量
    php 读取功能分割大文件实例详解
    php批量删除数据库下指定前缀的表
    PHP遍历目录返回统计目录大小实例
    PHP二维数组如何根据某个字段排序
    PHP 如何获取二维数组中某个key的集合(高性能查找)
    jQuery 隐藏与显示 input 默认值
  • 原文地址:https://www.cnblogs.com/yeshaoxiang/p/7839603.html
Copyright © 2020-2023  润新知