SourceTree配置多个不同Remote地址的仓库
需求
在我们开发过程中,有可能需要拉取的地址仓库不在同一个仓库中,有些可能在Github上,有些可能在Gitlab上。
所以我们需要配置Github的仓库的配置和Gitlab仓库的配置。
现在,我们来配置两个不同的仓库的地址。
假设:
Gilab地址:http://192.168.3.100/group/testRemo1.git
Github地址:https://github.com/username/testRemo2.git
其中:
group:Gitlab服务器上对于的群组名;testRemo1:仓库(在Gitlab后台上称为项目)名。
username:Github远程仓库拥有者的用户名(注意是拥有者的Github用户名,不是我们自己的,之后我们还需要有自己的Github账户);testRemo2:仓库名。
正常情况下:
Gitlab:我们使用gitlab可以使用我们自己的用户名和密码去拉取远程仓库。
Github:我们使用ssh key配置来拉取远程仓库。
添加多份SSH Key配置
在GitBash上执行:
ssh-keygen -t rsa -C "your_email@example.com" -f ~/.ssh/id_rsa_repo1
ssh-keygen -t rsa -C "your_email@example.com" -f ~/.ssh/id_rsa_repo2
这里的“your_email@example.com”替换为自己的邮箱地址。
执行了这两个命令之后,在Windows的C:/用户/“自己的用户名”/.ssh/目录上就会多了几个文件,其中包括:
id_rsa_repo1
id_rsa_repo1.pub
id_rsa_repo2
id_rsa_repo2.pub
这里的“id_rsa_repo1.pub”是为Gitlab准备的,但是我们拉取Gitlab上的仓库是使用用户名和密码去拉取,所以这个暂时是不需要到的。
这里的“id_rsa_repo2.pub”是为Github准备的,等一下我们需要把这个文件里的内容复制到我们自己的Github账户的SSHKey配置中。
Tips:既然不需要到id_rsa_repo1相关文件,那我们为什么还去创建他,因为我们可以经过这样的对比来了解在不同的仓库下的配置处理,这样之后如果想把Gitlab配置成SSH,就知道如何处理了。
再在GitBash上执行
ssh-add ~/.ssh/id_rsa_repo1
ssh-add ~/.ssh/id_rsa_repo2
在执行“ssh-add”时,可能会出现报错:
Could not open a connection to your authentication agent
可以执行
eval $(ssh-agent)
来启动ssh代理。
在Github中配置SSH



选择“SSH and GPG keys”可以看到,我这里已经配置了一个SSH Key了。
这个Key的SHA256码为:MSq1PY5oQPsvNij4DpM/nO...............
各位看官的这个列表里应该是没有这个Key的,所以我们现在来配置一下。
点击“New SSH key”

Tittle随便填什么。
Key里的内容,我们就打开“id_rsa_repo2.pub”文件,把里面的内容全部复制出来,粘贴到这里。
这样,我们就有了一个Key了。
在SourceTree配置
现在我们在SourceTree添加Github账户,点击“工具”-》“选项”-》“验证”切页,然后再点击“添加”,则出现以下界面。

然后再“托管服务商”总选择“Github”,再点击“刷新 OAuth令牌”。
会跳转到我们自己的Github账户中。

然后再点击“Authorize altassian”按钮,即可授权成功。

这样就添加了一个自己的Github账户。
然后,Github的仓库拥有者就可以给我们一个权限。我们就可以拉取远程仓库了。
拉取远程仓库

注意:
全程操作应该有科学上网支持。
但是即使有科学上网支持,我们还是可能使用git clone命令拉取不了远程仓库,这是因为git也要配置代理。
首先查看当前代理配置

可能你输入git config --global --get http.proxy后,没有任何显示,则你当前没有配置代理。
之后我们需要输入
git config --global http.proxy 127.0.0.1:29290
git config --global http2.proxy 127.0.0.1:29290
127.0.0.1:29290可以修改为你任意的代理地址。
相关文章:
SourceTree配置多个不同Remote地址的仓库
需求 在我们开发过程中,有可能需要拉取的地址仓库不在同一个仓库中,有些可能在Github上,有些可能在Gitlab上。 所以我们需要配置Github的仓库的配置和Gitlab仓库的配置。 现在,我们来配置两个不同的仓库的地址。 假设…...
【Golang 面试 - 进阶题】每日 3 题(十三)
✍个人博客:Pandaconda-CSDN博客 📣专栏地址:http://t.csdnimg.cn/UWz06 📚专栏简介:在这个专栏中,我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话,欢迎点赞👍收藏…...
自定义线程池(二)
上节回顾 在上一节当中,已经实现了一个线程池,在本节当中,我们需要添加拒绝策略。这里使用到了策略模式的设计模式,因为拒绝策略是多种的,我们需要将这个权利下放给调用者(由调用者来指定我要采取哪种策略…...
【Linux】常见指令
目录 一、指令的理解二、Linux的目录结构三、XShell 下的热键四、shell命令以及运行原理五、Linux常见的指令汇总1. ls 指令1.1 常见的一些有关 ls 的别名1.2 隐藏文件或目录1.3 * 的匹配 2. pwd 指令3. cd 指令3.1 cd . . 指令 4. touch指令5. mkdir指令6. rmdir指令 &&am…...
uniapp自定义网格布局用于选择金额、输入框焦点事件以及点击逻辑实战
样式 <view class="withdraw-section"><text class="section-title">提现金额</text><view class="amount-options"><view v-for="(item, index) in list" :key="index" class="amount-opt…...
中小学创客室培养学生全面发展
随着时代的发展,教育也在飞速发展,教育决定着一个国家的未来,一个家庭的未来,一个人的未来,我国近年来大力鼓励科学教育,支持科学创新。因此,学校应该重视对学生的科学教育,尤其是处于思想启蒙阶…...
AI Agent智能体落地应用测试,一句话即可操控它执行工作
一、什么是Agent 在软件应用中,软件代理或智能代理,是一种能够自主执行任务或做出决策的计算机程序。它们可以用于自动化任务、个性化推荐、数据分析等,这一类的桌面应用称之为Agent。如Siri、Alexa、Google Assistant等,它们能够…...
免费的SD-WAN服务
SD-WAN,SASE,零信任是近年来比较火的概念,SD-WAN发展已经很久了,但是真正能够自主研发做SD-WAN的企业其实并不算太多。 比扬云的SD-WAN产品是自主研发的,可控性强,最重要的是具有免费版本,可以免…...
gradle安装及配置
文章目录 一、下载安装包二、解压文件三、环境变量配置四、验证安装结果五、配置国内源六、IDEA配置 一、下载安装包 从gradle官网下载安装包,官网地址为:https://gradle.org/releases/ 我们只需要下载编译好的文件即可。 二、解压文件 解压文件到指定…...
C-sharp-console-gui-framework:C#控制台应用程序的GUI框架
推荐一个.Net开源项目,方便我们基于控制台创建图形用户界面(GUI)应用程序。 01 项目简介 ConsoleGUI是一个简单的布局驱动.NET框架,用于创建基于控制台的GUI应用程序。 核心功能: **布局驱动:**与WPF或H…...
一文搞懂后端面试之MySQL MVCC【中间件 | 数据库 | MySQL | 隔离级别 | Read View】
为什么需要MVCC 锁本身就是用于并发控制的,那么为什么InnoDB还要引入MVCC,读写都加锁不就可以控制住并发吗? 锁确实可以,但是性能太差。如果是纯粹的锁,那么写和写、读和写、读和读之间都是互斥的。如果是读写锁&…...
Mysql执行计划(上)
1、执行计划的概念 执行计划是什么:使用EXPLAIN关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的。 作用:分析你的查询语句或是表结构的性能瓶颈 语法:Explain SQL语句 执行计划输出内容介绍&#…...
使用Python+moviepy截取音频片段
一、使用AudioFileClip对象的subclip函数,截取1秒至3秒的音频 from moviepy.editor import *auAudioFileClip("/home/Download/test.mp3") # 创建对象clipau.subclip(1,3) # 截取1秒至3秒的音频clip.write_audiofile("/home/Download/clip.mp3"…...
Java学习Day19
动态SQL语句标签 1.if 用于根据条件判断是否包括某段 SQL 代码 <if test"checktext !null and check !"> 2.<choose>, <when>, <otherwise>类似于 Java 的 switch 语句,用于在多个条件中选择一个。 <select id"getSt…...
8.达梦数据库常用SQL
文章目录 前言1. 服务器资源1.1 CPU使用率1.2 内存使用率 2 数据库实例管理2.1 查询版本号2.2 查询ini配置2.3 查询归档配置2.4 数据库实例初始化参数2.5 查看数据库信息2.6 查看数据库实例信息2.7 查看数据库实例信息2.8 查看授权信息2.9 查询页大小,字符集大小2.1…...
深入理解接口测试:实用指南与最佳实践(四)IHRM管理系统实战-项目分析
您好,我是程序员小羊! 前言 这一阶段是接口测试的学习,我们接下来的讲解都是使用Postman这款工具,当然呢Postman是现在一款非常流行的接口调试工具,它使用简单,而且功能也很强大。不仅测试人员会使用…...
程序编译及链接
你好!感谢支持孔乙己的新作,本文就程序的编译及链接与大家分析我的思路。 希望能大佬们多多纠正及支持 !!! 个人主页:爱摸鱼的孔乙己-CSDN博客 1.翻译译环境与运行环境 当我们进行程序设计时&…...
route 命令介绍及使用方法
route 命令 作用:用于显示和操作 IP 路由表 (show/manipulate the IP routing table)。 在命令行下执行 route 命令添加路由,不会永久保存,当网卡重启或者机器重启后,该路由就会失效。 命令参数…...
力扣热题100_二叉树_226_翻转二叉树
文章目录 题目链接解题思路解题代码 题目链接 226. 翻转二叉树 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 1: 输入:root [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1] 示例 2: …...
Java SpringBoot 集成 MinIO 资料
Java SpringBoot 集成 MinIO 资料 一、文档 官方文档CSDN项目示例解除Spring文件上传大小限制 二、个人实战 注意事项: 部署MinIO时会涉及到两个端口号,一个为endpoint的端口,一个为console的端口,注意不要弄混 比如:…...
Surge实战:构建一个实时音频处理应用
Surge实战:构建一个实时音频处理应用 想要开发高性能的实时音频处理应用?Surge 是你的最佳选择!这款强大的Swift库利用Accelerate框架,为矩阵运算、数字信号处理和图像操作提供高性能函数。无论你是音频开发新手还是经验丰富的工程…...
WPF中DataTrigger动态控制UI元素可见性的实战技巧
1. 为什么需要动态控制UI元素可见性 在WPF应用开发中,经常会遇到需要根据某些条件动态显示或隐藏界面元素的情况。比如当用户勾选某个复选框时显示额外的输入框,或者根据后台数据状态改变界面布局。这种动态交互能够显著提升用户体验,让界面更…...
终极指南:如何用Bloxstrap重新定义你的Roblox游戏启动体验
终极指南:如何用Bloxstrap重新定义你的Roblox游戏启动体验 【免费下载链接】bloxstrap An alternative bootstrapper for Roblox with a bunch of extra features. 项目地址: https://gitcode.com/GitHub_Trending/bl/bloxstrap Bloxstrap是一款功能强大的第…...
Phi-4-mini-reasoning Chainlit插件开发:集成Copilot式代码补全与执行沙箱
Phi-4-mini-reasoning Chainlit插件开发:集成Copilot式代码补全与执行沙箱 1. 项目概述 Phi-4-mini-reasoning是一个基于合成数据构建的轻量级开源模型,专注于高质量、密集推理的数据处理。作为Phi-4模型家族的一员,它特别强化了数学推理能…...
新都好用的ai优化公司
在新都,AI优化公司如雨后春笋般涌现,但行业发展也面临着诸多痛点。数据表明,越来越多的用户直接向AI提问获取信息,导致传统搜索流量被AI截流。据统计,超过60%的用户更倾向于通过AI工具获取答案,若品牌未被A…...
微信表情包批量导出与跨平台应用指南
1. 为什么需要批量导出微信表情包? 微信表情包已经成为我们日常聊天中不可或缺的一部分。无论是和朋友闲聊,还是工作沟通,一个恰到好处的表情包往往能胜过千言万语。但问题来了:当我们切换到其他平台(比如钉钉、飞书等…...
Emwin实现Edit控件与数字键盘交互:从点击到Text显示的完整流程
1. Emwin数字键盘交互实现概述 在嵌入式GUI开发中,数字键盘与Edit控件的交互是高频需求场景。想象一下ATM机的密码输入界面,或者工业设备参数设置面板——点击输入框弹出数字键盘,输入完成后数据自动更新到显示区域,这种交互逻辑背…...
跨越版本鸿沟:Vivado 2022.2与Petalinux 2022.1协同构建HDMI显示系统
1. 为什么需要跨越版本鸿沟? 最近在做一个基于Zynq-7000的开发项目,需要实现HDMI显示功能。按照传统做法,很多人会选择Vivado 2018.3Petalinux 2018.3这套"黄金组合",毕竟网上教程多,资料全。但实际使用中我…...
如何理解 WeakSet 不可遍历且没有 size 属性的设计原因
WeakSet 不提供 size 和遍历能力,因其设计目标是“弱存在性登记册”,仅通过 has() 判断对象是否尚未被 GC 回收;size 不稳定、遍历会引发强引用,故规范禁止 clear、迭代器等操作,且只接受对象类型。WeakSet 为什么连 s…...
别再死磕Softmax了!清华黄高团队新作Agent Attention,让Transformer在高分辨率图像上也能飞起来
Agent Attention:突破Transformer高分辨率瓶颈的下一代注意力机制 当你在Stable Diffusion中生成一张4K图像时,是否遇到过显存爆满的尴尬?当用DeiT处理医学影像时,是否因计算资源不足而被迫降低分辨率?这些痛点背后&am…...
