zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    SQL 查询两个时间段是否有交集的情况 三种写法
    c# 时间区间求并集
    uniapp 身份证识别 微信 百度 图片前端压缩 图片后端压缩
    Git命令大全
    构建android studio项目
    如何查tomcat进程和杀死进程
    mysql 备份 还原不了
    解决git extensions每次要输入用户名和密码
    JS string 转 Byte64[]
    Git cmd
  • 原文地址:https://www.cnblogs.com/yeshaoxiang/p/7839603.html
Copyright © 2011-2022 走看看