git操作(bitbucket仓库)

在代码远程版本控制和提交过程中需要经常使用git命令,熟练使用git是一个软件工程师必备的技能之一。

将主版本代码fork到自己的 bitbucket 子仓库中

克隆到本地

利用ssh链接进行克隆,将 fork 的子仓库克隆到本地。

git clone ssh://{$你fork的子bitbucket仓库git链接$}

添加远程主仓库

虽然我们fork了主仓库的代码到自己的子仓库,但这种fork会无形中造成自己本地的代码与远程主仓库之间发生隔离,无法实现最新的同步。我们使用下面的指令在本地子仓库中添加远程主仓库的连接,并命名为upstream(这个名称是一个通识做法)。这样我们就可以通过upstream这个简短的名称来引用这个远程仓库,进行如拉取(pull)、推送(push)等操作。

git remote add upstream ssh://{$bitbucket主仓库的git链接$}

之后我们可以使用下面的命令来查看当前 Git 仓库中配置的远程仓库详细信息。

git remote -v

返回的结果可能有如下结构:

origin ssh://git@example.com:7999/user/repo.git (fetch)
origin ssh://git@example.com:7999/user/repo.git (push)
upstream https://github.com/original/repo.git (fetch)
upstream https://github.com/original/repo.git (push)

originupstream 是两个远程仓库的名称,每个仓库都有对应的获取和推送 URL。通常情况下,获取和推送的 URL 是相同的,但在某些配置中,它们可能不同。这个命令帮助你确认你的远程仓库设置是否正确,以及你正在与哪个仓库进行交互。

确定分支

在完成与远程仓库的连接后,我们可以开始在本地修改自己的代码了,但首先应该确定自己要修改的分支,以及当前本地代码处于哪个分支中。

git branch

代码同步(当commit历史杂乱时使用)

在你克隆代码的同时,也许某个同事又提交了一次代码并且已经迅速合并到了原始主代码中,那么这样你克隆的代码就不是最新的了,为此,应当与这个最新的提交进行同步,或者说通过重置操作将代码与这个最新的代码进行合并。或者,由于之前你的某些提交,使得当前克隆下来的子仓库中有多个commit提交记录(可通过git log命令查看)。

我们在主仓库的commit中复制最新的一次commit的哈希值,并使用下面的命令

git reset {$主仓库最新的一次提交的哈希值$}

这样就可以是的当前子仓库的commit历史保持简洁,否则push后有可能会因存在多个commit提交历史而导致审查不通过。

代码修改

经过以上配置之后,我们开始修改代码。在修改过后,我们按照如下步骤依次执行

#确定一下当前代码的状态
git status

#查看有哪些地方做了修改
git diff

#将修改的文件提交到暂存区
git add {$你修改的文件的路径,可以是绝对路径也可以是相对路径$}

#提交信息
git commit -m "...a fix code ..."

#代码推送
git push -f

🎶 需要注意的是,如果之前已经提交过一个commit,现在是在原基础上继续修改,那么就要使用amend命令

git commit --amend -s

这个命令用于修改最近一次提交,并在提交信息中添加 “Signed-off-by” 行。这样就可以在原提交基础上继续提交,而不会产生额外的commit信息。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/954456.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【AIGC】SYNCAMMASTER:多视角多像机的视频生成

标题:SYNCAMMASTER: SYNCHRONIZING MULTI-CAMERA VIDEO GENERATION FROM DIVERSE VIEWPOINTS 主页:https://jianhongbai.github.io/SynCamMaster/ 代码:https://github.com/KwaiVGI/SynCamMaster 文章目录 摘要一、引言二、使用步骤2.1 TextT…

登录系统网址作业

目录 主页代码 主页​编辑 效果1 登录页面代码 登录页面 效果2 注册页面代码 注册页面 效果3 主页代码 <!DOCTYPE html> <html lang"zh"> <head> <meta charset"UTF-8"> <meta name"viewport" content&qu…

[Do374]Ansible一键搭建sftp实现用户批量增删

[Do374]Ansible一键搭建sftp实现用户批量增删 1. 前言2. 思路3. sftp搭建及用户批量新增3.1 配置文件内容3.2 执行测试3.3 登录测试3.4 确认sftp服务器配置文件 4. 测试删除用户 1. 前言 最近准备搞一下RHCA LV V,外加2.9之后的ansible有较大变化于是练习下Do374的课程内容. 工…

00_专栏《Redis 7.x企业级开发实战教程》介绍

大家好,我是袁庭新。Redis作为一款高性能、多用途的内存数据库,凭借其丰富的数据结构、高速读写能力、原子操作特性及发布订阅等功能,在缓存加速、分布式锁、消息队列等场景中不可或缺,极大提升了系统性能与开发效率,是现代互联网应用架构的关键组件。 你是否在学习Redis…

wow-agent 学习笔记

wow-agent-课程详情 | Datawhale 前两课比较基础&#xff0c;无笔记 第三课 阅卷智能体这一块&#xff0c;曾经做过一点和AI助教相关的内容&#xff0c;也是用了一个prompt去进行CoT&#xff0c;但是风格和课程中的不太相同&#xff0c;在下面附上我的prompt 你是一名资深教…

如何优化Elasticsearch大文档查询?

记录一次业务复杂场景下DSL优化的过程 背景 B端商城业务有一个场景就是客户可见的产品列表是需要N多闸口及各种其它逻辑组合过滤的&#xff0c;各种闸口数据及产品数据都是存储在ES的(有的是独立索引&#xff0c;有的是作为产品属性存储在产品文档上)。 在实际使用的过程中&a…

idea分支合并代码

步骤一 首先把两个分支的代码都提交了&#xff0c;保持和远程仓库一致&#xff0c;不要有任何没提交的代码。如果一些程序的yml配置文件&#xff0c;不想提交&#xff0c;可以复制一个&#xff0c;不受git管理。如果有没有提交的代码&#xff0c;合并分支的时候就会提示那些代…

EasyLine(v2.0)自制光谱、曲线处理软件

前言&#xff1a;因为这次更新对软件的整体变动较大&#xff0c;所以就没有取版本v1.1&#xff0c;而是直接使用v2.0版本。然后上一版的讲解也不是很清楚&#xff0c;这次也做重点讲解一下。 自制光谱、曲线处理软件-EasyLine 软件的安装软件的使用总体介绍文件格式处理的使用 …

使用JMeter模拟多IP发送请求!

你是否曾遇到过这样的场景&#xff1a;使用 JMeter 进行压力测试时&#xff0c;单一 IP 被服务器限流或者屏蔽&#xff1f;这时&#xff0c;如何让 JMeter 模拟多个 IP 发送请求&#xff0c;成功突破测试限制&#xff0c;成为测试工程师必须攻克的难题。今天&#xff0c;我们就…

python如何设计矩阵

python设计矩阵&#xff1a; 1、调用numpy模块创建矩阵并设置矩阵的行跟列 import numpy matrix numpy.array([[1,2,3],[4,5,6],[7,8,9]])#创建矩阵 2、通过下标的办法输出二维列表中的一维列表&#xff0c;达到输出矩阵的效果 vector numpy.array([[1,2,3],[4,5,6],[7,8,9]…

量子计算:从薛定谔的猫到你的生活

文章背景 说到量子计算&#xff0c;不少人觉得它神秘又遥不可及。其实&#xff0c;它只是量子物理学的一个“应用小分支”。它的核心在于量子比特的“叠加”和“纠缠”&#xff0c;这些听上去像科幻小说的概念&#xff0c;却为计算世界开辟了一片全新的天地。如果经典计算是“…

python 轮廓 获取环形区域

目录 效果图&#xff1a; 代码&#xff1a; 效果图&#xff1a; 代码&#xff1a; import cv2 import numpy as np# 读取图像 image cv2.imread(rE:\project\jijia\tools_jijia\img_tools\ground_mask.jpg, cv2.IMREAD_GRAYSCALE) # 二值化图像 # 二值化图像 _, binary cv…

Python | 使用Matplotlib进行图案填充和边缘颜色分离的三种方法

Matplotlib是Python中功能强大的绘图库&#xff0c;允许广泛的自定义选项。一个常见的要求是分离出图中的图案填充和边缘颜色。默认情况下&#xff0c;Matplotlib中的填充颜色与边缘颜色相关联&#xff0c;但有一些方法可以独立自定义这些颜色。本文将深入研究如何实现这一点的…

OpenStack 网络服务的插件架构

OpenStack 的网络服务具有灵活的插件架构&#xff0c;可支持多种不同类型的插件以满足不同的网络需求。以下是对 OpenStack 网络服务插件架构中一些常见插件类型的介绍&#xff1a; 一、SDN 插件 Neutron 与 SDN 的集成&#xff1a;在 OpenStack 网络服务里&#xff0c;SDN 插…

从 MySQL 到 ClickHouse 的迁移与优化——支持上亿级数据量的复杂检索

文章目录 1. ClickHouse 背景与使用场景1.1 ClickHouse 简介1.2 ClickHouse 的特点1.3 ClickHouse 的使用场景 2. 从 MySQL 到 ClickHouse 的迁移2.1 MySQL 与 ClickHouse 的对比2.2 迁移背景2.3 迁移注意事项2.3.1 数据模型设计2.3.2 数据迁移2.3.3 SpringBoot 项目改造2.3.4 …

08:软件定时器+中断管理

软件定时器中断管理 1、软件定时器2、中断管理2.1、中断屏蔽2.2、临界区 1、软件定时器 软件定时器是基于 FreeRTOS 内核提供的时间管理功能实现的&#xff0c;允许开发者创建、启动、停止、删除和管理定时器&#xff0c;从而实现在任务中对时间的灵活控制。 软件定时器硬件定…

数据结构《MapSet哈希表》

文章目录 一、搜索树1.1 定义1.2 模拟实现搜索 二、Map2.1 定义2.2 Map.Entry2.3 TreeMap的使用2.4 Map的常用方法 三、Set3.1 定义3.2 TreeSet的使用3.3 Set的常用方法 四、哈希表4.1 哈希表的概念4.2 冲突4.2.1 冲突的概念4.2.2 冲突的避免1. 选择合适的哈希函数2. 负载因子调…

蓝桥与力扣刷题(709 转换成小写字母)

题目&#xff1a;给你一个字符串 s &#xff0c;将该字符串中的大写字母转换成相同的小写字母&#xff0c;返回新的字符串。 示例 1&#xff1a; 输入&#xff1a;s "Hello" 输出&#xff1a;"hello"示例 2&#xff1a; 输入&#xff1a;s "here…

unity学习16:unity里向量的计算,一些方法等

目录 1 unity里的向量&#xff1a; 2 向量加法 2.1 向量加法的几何意义 2.2向量加法的标量算法 3 向量减法 3.1 向量减法的几何意义 3.2 向量减法的标量算法 4 向量的标量乘法 5 向量之间的乘法要注意是左乘 还是右乘 5.1 注意区别 5.2 向量&#xff0c;矩阵&#x…

算法3(力扣83)-删除链表中的重复元素

1、题目&#xff1a;给定一个已排序的链表的头 head &#xff0c; 删除所有重复的元素&#xff0c;使每个元素只出现一次 。返回 已排序的链表 。 2、实现&#xff08; 因为已排序&#xff0c;所以元素若重复&#xff0c;必然在其下一位&#xff09;&#xff08;这里为在vscod…