Git-常规用法-含解决分支版本冲突解决方法

目录

前置条件

已经创建了Gitee账号 

 创建一个远程仓库

Git的优点

 版本控制

Git 下载

Git的使用 

 检查Git的是否安装成功

git的常用命令

常用流程

Git 分支

分支流程

 Git 远程仓库

远程仓库流程 

 特殊

可能遇到的问题


前置条件

已经创建了Gitee账号 
 创建一个远程仓库

个人主页-新建一个仓库-起好仓库名字-简介

远程仓库地址

Git的优点

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。于2005年以GPL发布。采用了分布式版本库的做法,不需要服务器端软件,就可以运作版本控制,使得源代码的发布和交流极其方便。

 版本控制
  • 何为版本控制

    ​版本控制是一种在软件开发过程中用于管理对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术。

    ​ 版本控制最主要的功能就是追踪文件的变更,每一次文件的改变,文件的版本号都将增加。除了记录版本变更外,版本控制的另一个重要功能是并行开发。软件开发往往是多人协同作业,版本控制可以有效地解决版本的同步以及不同开发者之间的开发通信问题,提高协同开发的效率

Git 下载

Git - 下载软件包 (git-scm.com)

Git的使用 

点击右键-选择Git Bash Here  打开 Git Bash 命令行终端

 检查Git的是否安装成功

如果出现对应的版本编号就说明成功了,这边是2.430版本

git的常用命令

git的常用命令
git  config  --global user.name用与设置用户签名-用户名
git  config  --global user.email用与设置用户签名-邮箱
git init初始化本地仓库
git status查看本地仓库状态
git add添加到暂存区
git -commit  -m "日志信息" 文件名提交到本地仓库
git reflog查看历史记录
git reset --hard 版本号版本穿梭
git --version查看版本号

常用流程

设置用户名,和用户邮箱(按照具体的情况)

git config --global user.name xiaodaoshi
git config --global user.email xiaodaoshi@163.com

这边设置完成之后可以看到具体的用户名和邮箱 

命令 cat ~/.gitconfig

创建初始化仓库

第一步: 找到需要添加的初始化的目录

第二步: 右键打开选择 Git Bash 终端

第三步:  初始化仓库 git init

成功之后会有一个隐藏的目录 .git 

查看状态

首次查看 工作区五任何文件 号 报 No commits yet

这边先建一个文件 hello.txt

提交文件到暂存区

第一种 直接提交当前目录下的所有文件

 git add  . 

第二种 提交当前对应文件名的文件

git add  hello.txt(这是举例的文件)

 提交到本地仓库

git commit -m "信息日志" 

git commit  -m "First commit"

查看历史版本 

git log  查看版本详细信息

git reflog 查看版本信息 

 这边修改了内容,提交了第二个版本

注意 : 这边当前所在版本号为第二次版本 ,HEAD->Master 指明当前版本

版本穿梭

这边不需要太多详细信息,先 git reflog 查看版本号就可

git reset --hard 版本号

Git 分支

​ 在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本。

分支的操作命令
git branch创建分支
git branch -v查看分支
git checkout 分支名切换分支
git merge 分支名将指定的分支合并到当前分支
分支流程

查看分支

git branch -v 

注意 : 星号 * 代表当前所在分区

创建分支

git branch 分支名

 

修改分支

这边先在主分支中修改些内容

切换分支

 git checkout 分支名

合并分支

 第一种冲突合并

冲突产生的原因

合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。Git 无法替 我们决定使用哪一个。必须人为决定新代码内容

 解决方式

  • 删除特殊符号 
  • 添加到暂存区 git add 文件名
  • 执行提交 git commit -m "日志信息"

删除分支(补更)

git branch - D 分支名

比较差异

git diff  暂存区

 git diff --cached 

你可以使用以下命令来查看暂存区与最后一次提交之间的差异

这边是第一次提交,是可以查看其文件内容

 

git diff 版本号 版本号

 如果你想比较两个特定提交之间的差

 

 Git 远程仓库

远程仓库操作
git remote -v 查看当前所有远程地址别名
git remote add 别名 远程仓库地址起别名
git push 别名 分支推送本地分支内容到远程仓库
git clone 远程仓库地址将远程仓库内容克隆到本地仓库
git pull 远程地址别名 远程分支名

将远程仓库对于分支下最新的内容

拉下来与当前本地分支直接合并

远程仓库流程 

创建远程仓库和取别名

git remote -v 

git remote add xiaoshimei https://gitee.com/to-uphold-justice-for-others/learning-gitee.git

 将本地内容推送到远程仓库

git push 别名 分支

 到远程仓库确认,确认已经推送成功

 下载远程仓库的内容

git push 别名 远程仓库名

克隆远程仓库的内容进入本地地址

git clone 远程仓库地址 

 特殊

团队合作

添加团队成员

这边直接搜索用户名就能找到对应的团队人员 

 

IDEA上使用Gitee

创建一个初始化的仓库

 将文件添加到暂存区

注意红色状态是未添加到缓存区的状态,而绿色则是已经添加到缓存区的状态

 这边拿demo1先举个例子

将demo1文件提交到本地仓库

将demo1文件提交到远程仓库

 第二步:输入远程地址仓库名

push对应的文件demo1 

可能遇到的问题-推送拒绝

如果之前有文件的话,可能需要先pull,否则会 push reject 或者需要新建一个分支,将其push

 创建一个新分支

默认会切换新分支

 切换分支

将分支融入到master中  

点击对应分支 push push对应的文件

 注意这个只是提交自己的文件,需要更新同步代码

 可能遇到的问题-不相关分支合并

 解决Git 不相关的分支合并-CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

求1000以内正整数的平方根(C语言)

一、运行结果&#xff1b; 二、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h> # include <math.h>int main() {//初始化变量值&#xff1b;int number 0;int result 0;//提示用户&#xff1b;printf("请输入1000以内求平方根的…

【c++leetcode】14. Longest Common Prefix

问题入口 解决方案 class Solution { public:string longestCommonPrefix(vector<string>& v) {string ans "";sort(v.begin(), v.end());int n v.size();string first v[0],last v[n - 1];for(int i 0; i < min(first.size(),last.size()); i){…

密码学 | 椭圆曲线数字签名方法 ECDSA(下)

目录 10 ECDSA 算法 11 创建签名 12 验证签名 13 ECDSA 的安全性 14 随机 k 值的重要性 15 结语 ⚠️ 原文&#xff1a;Understanding How ECDSA Protects Your Data. ⚠️ 写在前面&#xff1a;本文属于搬运博客&#xff0c;自己留着学习。同时&#xff0c;经过几…

树莓派安装Nginx服务结合内网穿透实现无公网IP远程访问

文章目录 1. Nginx安装2. 安装cpolar3.配置域名访问Nginx4. 固定域名访问5. 配置静态站点 安装 Nginx&#xff08;发音为“engine-x”&#xff09;可以将您的树莓派变成一个强大的 Web 服务器&#xff0c;可以用于托管网站或 Web 应用程序。相比其他 Web 服务器&#xff0c;Ngi…

CentOS7.9上安装Oracle11g详解

目录 一、环境准备1.安装依赖2.查看libaiobaio版本3.修改host&#xff0c;绑定主机名4.关闭selinux 二、安装配置1.创建组、用户2.修改内核参数3.配置Oracle用户参数4.修改/etc/pam.d/login 文件5.修改/etc/profile 文件6.创建数据库相关目录7.安装包上传、解压8.添加环境变量 …

修改element-ui中el-calendar(日历)的样式

效果图如下&#xff1a; <template><div class"dashboard-container"><el-card style"width: 350px; height: auto; border-radius: 8px"><div class"custom-style"><p class"new-data">{{ newDate }}&…

macbook怎么录屏幕视频?两款实用工具推荐!

在数字化时代&#xff0c;录制屏幕视频已成为我们日常生活和工作中不可或缺的一部分。MacBook作为一款广受欢迎的电脑品牌&#xff0c;为我们提供了高效且便捷的屏幕录制方式&#xff0c;可是很多用户不知道macbook怎么录屏幕视频。本文将介绍两种在Mac上录制屏幕视频的方法&am…

OpenCV——SUSAN边缘检测

目录 一、SUSAN算法二、代码实现三、结果展示 OpenCV——SUSAN边缘检测由CSDN点云侠原创&#xff0c;爬虫自重。如果你不是在点云侠的博客中看到该文章&#xff0c;那么此处便是不要脸的爬虫。 一、SUSAN算法 Susan边缘检测是一种经典的边缘检测算&#xff0c;它由Susan Smith…

【muduo源码学习】one-loop-per-thread核心原理

在 TCP 网络编程中&#xff0c;这里我们特指在单机的环境下&#xff0c;主要关注两件事。第一&#xff0c;如何正确的处理TCP的连接和断开&#xff0c;以及正确处理数据的收发&#xff1b;在错综复杂的网络环境中&#xff0c;这并非易事&#xff0c;涉及很多细节。第二&#xf…

【JAVA基础篇教学】第十七篇:Java单元测试

博主打算从0-1讲解下java基础教学&#xff0c;今天教学第十七篇&#xff1a;Java单元测试。 单元测试和集成测试是软件开发过程中至关重要的一部分&#xff0c;它们可以帮助确保代码的质量和稳定性。下面我将为您提供详细说明和代码案例。 一、单元测试&#xff08;Unit Test…

Leetcode 221. 最大正方形

心路历程&#xff1a; 这道题是一个动态规划题&#xff0c;但是其实递推关系很难想到&#xff0c;如下图所示&#xff1a; MDP建模&#xff1a; 状态&#xff1a;以i,j为右下角的正方形 动作候选集&#xff1a;这道题的动作候选集其实是是否选择其左上角邻接的三个位置&#x…

11.范式与反范式设计

范式 1.问题 MySQL的库表设计&#xff0c;在很多时候我们都是率性而为&#xff0c;往往在前期的设计中考虑不全面&#xff0c;同时对于库表结构的划分也并不明确&#xff0c;所以很多时候在开发过程中&#xff0c;代码敲着敲着会去重构某张表结构&#xff0c;甚至大面积重构多…

深圳比创达电子EMC|EMC电磁兼容性:电子设备稳定运行的保障

随着科技的飞速发展&#xff0c;电子设备在人们的日常生活中发挥着越来越重要的作用。然而&#xff0c;随之而来的电磁干扰问题也日益突出。电磁兼容性&#xff08;EMC&#xff09;作为衡量电子设备在电磁环境中正常工作能力的关键指标&#xff0c;其重要性不言而喻。 一、EMC…

IP地址是随着网络变化的吗?

IP地址&#xff0c;即互联网协议地址&#xff0c;是分配给每个联网设备或网络接口的数字标签。它在网络通信中起着至关重要的作用&#xff0c;是设备之间互相识别和通信的基础。然而&#xff0c;关于IP地址是否随着网络变化&#xff0c;这是一个值得深入探讨的问题&#xff0c;…

深度残差收缩网络中,使用 Sigmoid 函数的用意在哪?

在深度残差收缩网络中&#xff0c;使用 Sigmoid 函数将输出归一化到 0 和 1 之间的目的是为了限制输出值的范围&#xff0c;并且使得输出可以被解释为概率。这个 Sigmoid 函数的输出可以被看作是一个置信度或者概率的度量&#xff0c;表示某个事件发生的可能性。 在设置阈值时…

详解playwright 官方Javascript demo(适合小白)

如果大家刚上手playwright&#xff0c;并看到了Javascript脚本的官方demo&#xff0c;代码如下&#xff1a; const { webkit } require(playwright);(async () > {const browser await webkit.launch();const page await browser.newPage();await page.goto(http://what…

开放式耳机怎么选?五大市场热卖爆款推荐!

近年来&#xff0c;开放式耳机风潮席卷市场&#xff0c;各大知名品牌纷纷推出新品&#xff0c;以满足消费者的需求。相较于传统的入耳式耳机&#xff0c;开放式耳机凭借其独特的佩戴方式&#xff0c;受到了广大消费者的热烈追捧。它不仅有效避免了长时间佩戴带来的耳道不透气、…

【数据结构】栈的实现

&#x1f451;个人主页&#xff1a;啊Q闻 &#x1f387;收录专栏&#xff1a;《数据结构》 &#x1f389;前路漫漫亦灿灿 前言 栈是一种特殊的线性表&#xff0c;我们在有了顺序表和链表的知识的基础上&#xff0c;再来学习栈&#xff0c;掌握起来就更轻松了…

所有可能的真二叉树(Lc894)——记忆化搜索

给你一个整数 n &#xff0c;请你找出所有可能含 n 个节点的 真二叉树 &#xff0c;并以列表形式返回。答案中每棵树的每个节点都必须符合 Node.val 0 。 答案的每个元素都是一棵真二叉树的根节点。你可以按 任意顺序 返回最终的真二叉树列表。 真二叉树 是一类二叉树&#…

【24年物联网华为杯】赛题分析与初步计划

赛事介绍 官网链接&#xff1a;2024 年全国大学生物联网设计竞赛 (sjtu.edu.cn) 含金量&#xff1a;属于A类赛事 &#xff08;注意&#xff1a;很多搜索结果的序号是按照选入时间排列的&#xff0c;与含金量无关&#xff0c;华为杯是23年选入的&#xff09; Kimi Chat: 全国…