github 升级,小技巧,后知后觉

判官崔玨
• 阅读 963

背景

github 不支持 rest 的形式,操作仓库,

( 即账户 + 密码,操作, 不行了 )

github 的仓库操作,支持基于 token 认证的操作

( token-based authentication )

本文写的是,通过 ssh 操作 github 上的 git repo

细节

GitHub 支持 ssh 部署的粒度全面,

  • 可以基于用户,对所有的仓库统一部署

github 升级,小技巧,后知后觉

  • 可以基于仓库部署

github 升级,小技巧,后知后觉

那么一个用户创建了多个组织,

每个组织,只有该用户一个人,

怎样统一部署呢?

笔者暂未研究有成,本文接着描述,ssh 分仓库部署

解决,就是通过本地的 ssh 配置文件

~/.ssh/config

修改配置文件

一般我们的配置文件,长这样

Host *   // 通用
  AddKeysToAgent yes      // 添加密钥
  UseKeychain yes         // 使用持久化
  IdentityFile ~/.ssh/id_ed25519          //      文件路径,默认加密方式命名

现在一个 repo, 对应一个 host

添加了,两项配置

Host github1               // 主机
  HostName github.com      //  服务器名
  User git                 //  用户
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_a     // 一个仓库,一个私钥
  
 
Host github2
  HostName github.com
  User git
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_repo2

修改本地 git 仓库的远程路径 remote url

结果为

git remote -v                 
origin github1:AgesX/_off_screen_render.git (fetch)

把对应的公钥,粘贴到 github repo 里面

github 升级,小技巧,后知后觉

记得勾选,允许写入

以上为,流程的主要环节

下面进入凑字数

cd 一个文件夹,不方便

开发几年后,老眼昏花,

不能准确的拖动一个指定的文件夹

我开发出了, cdc

进入文件夹中,cdc 配合随意拖拽一个子文件到终端

就等于准确,找到想要的文件夹

cd_current(){
  cd "$(dirname "$1")" && pwd
}


alias 'cdc'='cd_current'

查看 git 仓库,基于文件的日志

可以考虑 gitlf

git log file

gitlf_file(){
   git log --follow -p -- "$1"
}
alias gitlf="gitlf_file"


  • 创建密钥

ssh-keygen -t ed25519 -C "dengjiangzhouReal@gmail.com"


  • 提交

git remote set-url origin Mm:AgesX/gcd_


github 文章

生成新 SSH 密钥并添加到 ssh-agent

命令:

ssh-add -K ~/.ssh/id_a

所有的私钥,都要来一遍

点赞
收藏
评论区
推荐文章
菜园前端 菜园前端
2年前
Gitee创建仓库使用指南来喽!
原文链接:gitee基于Git的代码托管和研发协作平台。这个是我们国内通用的代码管理仓库,除此之外还有比较火的国外的代码管理仓库Github。国内用户访问Github网络不太稳定,所以我这边先用国内的进行讲解。gitee官方地址创建git仓库1.登录账号后
Stella981 Stella981
4年前
Git配置SSH Key的时候提示密钥无效
错误提示:Keyisinvalid.YoumustsupplyakeyinOpenSSHpublickeyformat翻译:密钥无效。必须提供OpenSSH公钥格式的密钥操作步骤1.生成公钥sshkeygentrsaC"GitHub账号的注册邮箱"2.进入路径vim~/.ssh/i
Stella981 Stella981
4年前
Git下载GitHub仓库里的某一个文件夹或某一个文件
从Github上下载github上的整个项目,可以用下面指令:gitclonehttps://github.com/XXX/xxxxx.git其中:XXX是用户在Github上的用户名         xxxxx.git是用户在Github上的仓库名那如果只是想下载用户在Github上仓库里的某一个文件夹,怎么办呢?没有直接的Git
Stella981 Stella981
4年前
Hive Transaction 事务性 小试
  提到Hive一般都会想到,Hive是数据仓库,支持类SQL查询,有很多语法支持,可以嵌套MR,写Transform、写UDF/UDAF等,但是,不支持更新操作。所以Hive的常见也一般都是一次写入,频繁读取。从Hive0.13开始,加入了ACID的新feature,但是0.13的时候还不支持insert、update和delete操作,我也
Stella981 Stella981
4年前
GitHub使用SSH连接以及生成修改添加密钥详细过程
目录1\.先看看本地有没有SSH密钥2\.生成/修改密钥3\.把SSH密钥添加到sshagent4\.把SSH密钥添加到GitHub账户里5\.测试使用ssh地址clone仓库6\.把远程仓库的URL从HTTPS改成SSH7\.尝试一下pushGitHub如果使用HT
Wesley13 Wesley13
4年前
GIT的使用流程
GIT的使用流程1github注册流程1进入github官网:https://github.com/2注册一个自己的github账号3右上角选择Newrepository4进入createanewrepository选择你的仓库名填入:Repositoryname
Wesley13 Wesley13
4年前
GITEE 使用教程
这篇文章的目的是记录我的关于GitHub的内容,从注册、下载直到设置成功每一步都有解释,其中有一些截图或者代码来自于网络。GitHub和码云均基于Git,所以两者的操作方法基本一致,只需要学习其中一种即可。GitHub与码云均提供免费的代码仓库。GitHub免费版只能创建公开的项目,私有项目需要付费,截止本文发布时,服务费用是$7.00;
Stella981 Stella981
4年前
GitHub要改默认分支名了,你的开源项目受影响了吗?
!(https://oscimg.oschina.net/oscnet/6f834b45ce911d2e73d4879a55f11bcbc01.png)晚上浏览GitHub时偶然看到一个项目仓库github/renaming\1\,该仓库是GitHub的官方仓库,内容相对权威。大意是说:GitHub网站上仓库的默认分支是master,为了
Stella981 Stella981
4年前
Git和GitHub的基本操作
GIT版本控制系统版本控制系统功能:1.记录版本历史信息(记录每一次修改的记录)2.方便团队之间相互协作开发3.远程开发......常用的版本控制系统cvs/svn:集中式分布系统git:分布式版本控制系统1.GIT工作原
判官崔玨
判官崔玨
Lv1
明明都无言以对,还要硬聊,这就是喜欢
文章
2
粉丝
0
获赞
0