接触到的git的三个重要知识点

git配置多个SSH-Key

  1. 生成第一个需要的SSH-Key(比如公司用的) $ ssh-keygen -t rsa -C "emailname@company.com" -f ~/.ssh/id_rsa 这样就会在对应目录下生成id_rsaid_rsa.pub私钥和公钥, 公钥里面的内容需要粘贴到公司服务器的ssh-key配置中
  2. 生成一个github用的SSH-Key(第二个key) $ ssh-keygen -t rsa -C "yourname@your.com" -f ~/.ssh/github_rsa 还在同一个路径里面,把公钥的内容粘贴到github服务器的SSH-key配置中
  3. 在本机上添加两个私钥 $ ssh-add ~/.ssh/id_rsa $ ssh-add ~/.ssh/github_rsa 如果执行时提示"Could not open a connection to your authentication agent",则执行以下命令 ssh-agent bash 再运行ssh-add命令
  4. 修改(增加)配置文件 在~/.ssh目录下新建config文件: touch config 添加内容如下:(hostName是git地址最开头的那块:git@git.n.mifan.com:flash/flash-wap.git 就是git.n.mifan.com)
# gitlab(根据不同公司配置来修改, 实质是对不同的git地址 指定不同的私钥)
Host gitlab.com
    HostName gitlab.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa
# github
Host github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/github_rsa
  1. 确认目录结构并测试 $ ssh -T git@github.com 输出You’ve successfully authenticated, but GitHub does not provide shell access字样 表示配置成功

git使用cherry-pick

主要的功能是提交过程的重演,从而可以灵活地调整commit的历程

  1. 一种应用场景是在A分支的提交发现应该提交到B分支,在B分支上cherry-pick,A分支上git reset --hard 分支hash 用法: git cherry-pick <commit id> 对已经存在的commit进行二次apply 先git log,然后git checkout old_b, 在这个旧分支上进行git cherry-pick 309u5j0438u0948v090948v5903w(log中的hash值 可多个)
  2. 要把dev-3.0分支上的某些更改移到dev-2.x的版本上, 产品开发的灵活上线需求 首先新建一个要在其上应用cherry-pick的分支 git checkout -b release-2.1 release-2.0, 将dev-3.0分支上的commit在release-2.1分支上重演 git cherry-pick dev-3.0分支上的某些commit-hash 例如: 多个commit-hash使用空格分割,commit-hash最好按照提交时间先后排列,最先提交的放在最前面
git cherry-pick  
20c2f506d789bb9f041050dc2c1e954fa3fb6910 
2633961a16b0dda7b767b9264662223a2874dfa9 
5d5929eafd1b03fd4e7b6aa15a6c571fbcb3ceb4

但要注意这个特性不要乱用 大部分可能使rebase使用情况不要用cherry-pick 会简单问题复杂化

git链接远程仓库及取消

查看当前的远程仓库的命令: git remote -v

# 添加
git remote add origin git@url
# 删除
git remote rm origin
# 修改
git remote origin set-url git@url

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java技术栈

WEB攻击手段及防御-扩展篇

之前的文章介绍了常见的XSS攻击、SQL注入、CSRF攻击等攻击方式和防御手段,没有看的去翻看之前的文章,这些都是针对代码或系统本身发生的攻击,另外还有一些攻击...

32890
来自专栏Java学习123

WIN 7/WIN8 必须开启的服务及服务功能解释

381120
来自专栏数据和云

经典分享:一份高达555页的技术PPT会是什么样子?

首先要明确,升级和迁移是两件事,升级和数据量关系不大,而迁移通常涉及到跨数据库版本、跨平台,其耗时和复杂度大大增加,数据库容量也将成为重要的影响因素。

13040
来自专栏月牙寂

k8s源码分析-----kubelet(1)主要流程

第一时间获取文章,可以关注本人公众号 月牙寂道长 yueyajidaozhang

50250
来自专栏FreeBuf

XDB缓冲区溢出漏洞竟然可以颠覆整个数据库?

本文将向大家展示一种黑客入侵数据库的方法,希望能引起大家的警惕。想知道黑客入侵数据库的方法首先要深究黑客入侵数据库的目的。 经过调查发现黑客入侵者入侵数据库的最...

22560
来自专栏程序猿DD

八幅漫画理解使用 JWT 设计的单点登录系统

上次在《JSON Web Token - 在Web应用间安全地传递信息》中我提到了JSON Web Token可以用来设计单点登录系统。我尝试用八幅漫画先让大家...

13030
来自专栏JadePeng的技术博客

开源APM系统skywalking介绍与使用

SkyWalking 创建与2015年,提供分布式追踪功能。从5.x开始,项目进化为一个完成功能的Application Performance Managem...

72100
来自专栏jeremy的技术点滴

云服务器上ssh服务安全加固

97160
来自专栏编程

挖洞技巧:APP手势密码绕过思路总结

欢迎关注:07v8论安全,技术干货等你来 这是07v8的第5篇技术文章,希望对你有用 挖洞技巧:APP手势密码绕过思路总结 作者:@剑影 * 本文参与双dan投...

28290
来自专栏张戈的专栏

解决dos2unix/unix2dos报错,并在家目录下生成u2dtmp*文件问题

最近接到一个 case:大数据分析那边反馈我们这边推送的数据同比去年同期少了很多。这是很不正常的,因为业务一直在增长。 ? 于是,我开始顺藤摸瓜的跟进。一开始就...

64460

扫码关注云+社区

领取腾讯云代金券