【无标题】Git(仓库,分支,分支冲突)
Git
一种分布式版本控制系统,用于跟踪和管理代码的变更
一.Git的主要功能:
二.准备git机器
修改静态ip,主机名
三.git仓库的建立:
1.安装git
[root@git ~]# yum -y install git
2.创建一个目录----用来放置git文件
[root@git ~]# mkdir /yy000
3.使用git指令,一定要cd到初始化之后的目录
cd到yy000目录中使用init指令初始化
[root@git ~]# mkdir /yy000
[root@git ~]# cd /yy000/
[root@git yy000]# ls
[root@git yy000]# git init //将我们当前的目录变成一个工作区
4.初始化空的 Git 版本库于 /yy000/.git/
[root@git yy000]# vim Test.java //添加一个文件
[root@git yy000]# ls
Test.java
5.[root@git yy000]# git add Test.java //将Test.java放到缓存里面
6.[root@git yy000]# git commit -m "新建了一个Test.java文件,这是新建的" //提交放到仓库里面
7.创建用户及邮箱
[root@git yy000]# git config --global user.name tjj
[root@git yy000]# git config --global user.email 3490805063@qq.com
8.修改Test.java文件,添加一行注释
[root@git yy000]# echo "//这是一行jav注释,不会被编译,能提交 文件的可读性" >Test.java
[root@git yy000]# git log //查看日志
[root@git yy000]# git commit -m "这是第二次提交"
[root@git yy000]# git log
[root@git yy000]# echo "//我又加了一个注释" >> Test.java
[root@git yy000]# git add .
[root@git yy000]# git commit -m "将缓存中的内容提交到仓库"
[root@git yy000]# git log
四.git的基本流程
五.分支
1.查看当前仓库的分支
[root@git yy000]# git branch
* master //当前只有一个master主分支,当工作完成后,其他的分支都会合并到主分支
要求abc三个人实现一个接口
一个文件在同一时间只能被一个用户编辑
2.格式:
创建分支
git branch 分支名称
git checkout -b 分支名称
跳转分支
git checkout 分支名称
删除分支(两个分支合并的情况下)
git branch -d 分支名
强制删除分支(即使该分 支尚未合并),可以使用以下命令:
git branch -D 分支名
合并分支
git merge 分支名称
3.例子:
(1)[root@git yy000]# git branch abranch //创建分支
[root@git yy000]# git branch //查看分支
abranch
* master
(2)切换到abranch分支上
[root@git yy000]# git checkout abranch
切换到分支 'abranch'
[root@git yy000]# git branch
* abranch
master
[root@git yy000]# ls
Test.java
(3)[root@git yy000]# echo "我睡觉哦" >> Test.java //写入内容并追加到Test.java文件中
[root@git yy000]# cat Test.java
(4)[root@git yy000]# git add . //将分支写的内容提交到缓存
(5)[root@git yy000]# git commit -m "我提交的" //提交新分支并注释为“我提交的”
[root@git yy000]# git checkout master
切换到分支 'master'
[root@git yy000]# git branch
abranch
* master
[root@git yy000]# cat Test.java
刚才写入的内容没有了,是因为之前是在其他分支上操作的,并非在master
上 ,所以切换回master后,显示的内容只会是master分支上的内容
[root@git yy000]# git checkout -b bbranch //-b在切换分支的同时创建分支
切换到一个新分支 'bbranch'
[root@git yy000]# git branch
abranch
* bbranch
master
[root@git yy000]# cat Test.java
[root@git yy000]# echo "我是b" >> Test.java
[root@git yy000]# git branch
abranch
* bbranch
master
[root@git yy000]# git checkout abranch
M Test.java
切换到分支 'abranch'
[root@git yy000]# cat Test.java
这两个分支可以共享
[root@git yy000]# git commit -m "aaa"
[root@git yy000]# git checkout master
[root@git yy000]# mkdir abc
[root@git yy000]# ls
abc Test.java
[root@git yy000]# touch efg
[root@git yy000]# git add abc/
[root@git yy000]# git commit -m "更像一个目录"
# 位于分支 master
# 未跟踪的文件:
# (使用 "git add <file>..." 以包含要提交的内容)
#
# efg
提交为空,但是存在尚未跟踪的文件(使用 "git add" 建立跟踪)
[root@git yy000]# git add efg
[root@git yy000]# git commit -m "新增了一个efg"
[master 6386f17] 新增了一个efg
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 efg
[root@git yy000]# git add .
[root@git yy000]# git commit -m "所有都提交"
当代码任务完成后,需要将更改合并回主分支。首先,切换回主分支
[root@git yy000]# git checkout master
[root@git yy000]# git merge abranch //在master里面把a修改的合并到master
[root@git yy000]# git log
删除分支(合并的情况下)
[root@git yy000]# git branch -d abranch
[root@git yy000]# git branch -d bbranch
[root@git yy000]# git branch -d cbranch
[root@git yy000]# git branch
* master
六.分支冲突:
在合并的时候,有可能出现文件冲突(主分支修改了文件,zhangsan分支也修改了这个文件,两个分支都发生了修改,合并的时候,就不清楚以哪个分支为主,产生冲突)
手动解决:
[root@git yy000]# echo "//我是主分支" > Test.java
[root@git yy000]# git checkout -b newbranch
[root@git yy000]# echo "//我是nerbranch分支" >> Test.java
[root@git yy000]# git add .
[root@git yy000]# git commit -m "abcd"
[newbranch e71525b] abcd
1 file changed, 2 insertions(+), 4 deletions(-)
[root@git yy000]# git checkout master
切换到分支 'master'
[root@git yy000]# cat Test.java
//这是一行jav注释,不会被编译,能提交文件的可读性
//我又加了一个注释
我睡觉哦
我是b
[root@git yy000]# echo "sdsdwsdew" > Test.java
[root@git yy000]# git add .
现在两个分支都有修改要将新分支合并到主分支
[root@git yy000]# git commit -m "cjdsbvdj"
修改Test.java文件
[root@git yy000]# vim Test.java
[root@git yy000]# git commit -m "cjdsbvdj" //再次合并
[root@git yy000]# git log
git拉取:
再启动一台主机
安装git
Yum -y install git
做一个免密登录到git主机上
ssh-keygen
ssh-copy-id root@192.168.2.30
克隆192.168.2.30上的资料
[root@git1 ~]# git clone 192.168.2.30:/yy000/.git/
修改内容
设置自己的姓名和邮箱
[root@git1 yy000]# git config --global user.name aaa
[root@git1 yy000]# git config --global user.email aaa@163.com
修改内容
[root@git1 yy000]# touch A.class
[root@git1 yy000]# git add .
[root@git1 yy000]# git commit -m "aaaa"
第一次使用对方的项目 git clone
七.在码云上创建项目
[root@git1 ~]# git clone smt: 用于仓库部署
[root@git1 ~]# cd smt/
[root@git1 smt]# ls
README.en.md README.md
[root@git1 smt]# mkdir -p src/main/java/
[root@git1 smt]# ls
README.en.md README.md src
[root@git1 smt]# touch src/main/java/Test.java
[root@git1 smt]# git add .
[root@git1 smt]# vim src/main/java/Test.java
[root@git1 smt]# vim src/main/java/Test.java
[root@git1 smt]# git add .
[root@git1 smt]# git commit -m “水蜜桃"
[root@git1 smt]# git push
相关文章:

【无标题】Git(仓库,分支,分支冲突)
Git 一种分布式版本控制系统,用于跟踪和管理代码的变更 一.Git的主要功能: 二.准备git机器 修改静态ip,主机名 三.git仓库的建立: 1.安装git [rootgit ~]# yum -y install git 2.创建一个…...

访问控制列表(ACL)
文章目录 ACL原理与基本配置ACL分类ACL组成ACL规则的匹配与应用 ACL原理与基本配置 ACL(Access Control List,访问控制列表) 读取二层、三层、四层报文信息根据预先定义好的规则对报文进行过滤和分类实现网络访问控制、防止网络攻击和提高网络带宽利用率等目的提高…...
自用git命令(待完善)
----------------------------------------------------------------------------------------- ###基础 git config --global user.name "xxxxx" #设置提交人 name git config --global user.email "xxxxxx163.com" #设置提交人 email git …...

突破•指针四
听说这是目录哦 函数指针数组🫧用途:转移表 回调函数🫧能量站😚 函数指针数组🫧 函数指针数组是存放函数地址的数组,例如int (*parr[5])()中parr先和[]结合,说明parr是可以存放5个函数地址【元…...
深入解析Python `requests`库源码,揭开HTTP请求的神秘面纱!
🔸 第一部分:requests库的入口 我们从requests库的入口开始,通常我们会使用 requests.get() 或 requests.post() 等方法发送HTTP请求。那么,这些方法背后究竟做了些什么呢?我们从requests.get()方法开始看起ÿ…...
day1 服务端与消息编码
文章目录 消息的序列化与反序列化通信过程服务端的实现main 函数(一个简易的客户端) 本文代码地址: 本文是7天用Go从零实现RPC框架GeeRPC的第一篇。 使用 encoding/gob 实现消息的编解码(序列化与反序列化)实现一个简易的服务端,仅接受消息,…...

部署WMS仓储管理系统项目后的注意事项
在探讨现代WMS仓储管理系统的部署与运营时,我们不得不深入剖析其背后的多维度考量与策略,以确保这一核心系统能够无缝融入并推动企业的整体供应链优化。WMS仓储管理系统作为连接仓库内部操作与外部供应链的桥梁,其重要性不言而喻,…...

跨网段 IP 地址通信故障分析
现如今计算机网络的规模和复杂性不断增加,跨网段通信成为网络运行中的常见需求。但如果设备处于不同网段且路由设置出现偏差时就会导致通信故障,严重影响网络的正常运行和数据传输。 1.跨网段通信的基本原理 跨网段通信依赖于路由器的路由功能。路由器根…...

存储引擎MySQL和InnoDB(数据库管理与高可用)
1、存储引擎 存储引擎是核心组成部分, 是构成数据库最基础最底层的部件, 利用这个部件,你的Mysql能够对数据进行查询、创建、更新、删除等操作, 也就是说,用户所输入的一系列的mysql语句,是由存储引擎来…...

探索局域网传输新境界 | 闪电藤 v2.2.7
在这个数字化时代,文件的快速、安全传输是我们日常工作中不可或缺的一部分。今天,电脑天空向大家介绍一款革命性的局域网文件传输工具——闪电藤,它将彻底改变你的文件传输体验。 🎨 界面设计 —— 极简之美 闪电藤采用极简的设…...
Tiling Window Management
我主要说一下windows版的 下面这个链接用的人比较多 GitHub - LGUG2Z/komorebi: A tiling window manager for Windows 🍉 建议搭配 GitHub - da-rth/yasb: A highly configurable cross-platform (Windows) status bar written in Python. GitHub - amnweb/ya…...
9. kubernetes资源——pv/pvc持久卷
kubernetes资源——pv/pvc持久卷 一、volume数据卷1、hostPath2、挂载nfs实现持久化 二、pv/pvc 持久卷/持久卷声明1、pv/pvc介绍2、pv/pvc的使用流程2.1 创建pv2.2 创建pvc2.3 创建pod,使用pv做持久化 一、volume数据卷 用于pod中的数据的持久化存储 支持很多的卷…...

2024西安铁一中集训DAY27 ---- 模拟赛((bfs,dp) + 整体二分 + 线段树合并 + (扫描线 + 线段树))
文章目录 前言时间安排及成绩题解A. 倒水(bfs dp)B. 让他们连通(整体二分 按秩合并并查集 / kruskal重构树)C. 通信网络(线段树合并 二分)D. 3SUM(扫描线 线段树) 前言 T1没做出…...

STM32F401VET6 PROTEUS8 ILI9341 驱动显示及仿真
stm32cubemx新建工程代码,并生成工程 设置gpio 设置SPI 其他的参考stm32默认设置 然后编辑驱动代码 ili9341.h #ifndef ILI9341_H #define ILI9341_H#include <stdbool.h> #include <stdint.h>#include "glcdfont.h" #include "stm32…...

抖音视频素材网站有哪些?非常好用的5个抖音视频素材库分享
在打造引人入胜的抖音视频时,选择高品质的视频素材至关重要。优选的素材不仅能够显著提升视频的吸引力,还能让你的作品在众多视频中突出重围。对于抖音创作者而言,让我们探索一些备受推崇的视频素材平台,帮助你制作出既专业又引人…...

【数据结构】链式二叉树的实现和思路分析及二叉树OJ
【数据结构】链式二叉树的实现和思路分析及二叉树OJ 🔥个人主页:大白的编程日记 🔥专栏:数据结构 文章目录 【数据结构】链式二叉树的实现和思路分析及二叉树OJ前言一.链式二叉树的定义及结构二.链式二叉树的遍历2.1前序遍历2.2中…...

项目成功秘诀:工单管理系统如何加速进程
国内外主流的10款项目工单管理系统对比:PingCode、Worktile、浪潮云工单管理系统、华为企业智能工单系统、金蝶云苍穹、紫光软件管理系统、Jira、Asana、ServiceNow、Smartsheet。 在管理日益复杂的个人项目时,找到一款能够真正符合需求的管理软件&#…...

OpenGauss和GaussDB有何不同
OpenGauss和GaussDB是两个不同的数据库产品,它们都具有高性能、高可靠性和高可扩展性等优点,但是它们之间也有一些区别和相似之处。了解它们之间的关系、区别、建议、适用场景和如何学习,对于提高技能和保持行业敏感性非常重要。本文将深入探…...

星环科技携手东华软件推出一表通报送联合解决方案
随着国家金融监督管理总局“一表通”试点工作的持续推进,星环科技携手东华软件推出了基于星环科技分布式分析型数据库ArgoDB和大数据基础平台TDH的一表通报送联合解决方案,并已在多地实施落地中得到充分验证。 星环科技与东华软件作为战略合作伙伴&…...

YOLOv10环境搭建、训练自己的目标检测数据集、实际验证和测试
1 环境搭建 1.1 在官方仓库的给定的使用python3.9版本,则使用conda创建对应虚拟环境。 conda create -n yolov10 python3.9 1.2 切换到对应虚拟环境 conda activate yolov10 1.3 在指定目录下克隆yolov10官方仓库代码 git clone https://github.com/THU-MIG/yo…...

MongoDB学习和应用(高效的非关系型数据库)
一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...
Mobile ALOHA全身模仿学习
一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...

华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
【Android】Android 开发 ADB 常用指令
查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...