C++ 在项目中使用Git

news2024/12/24 3:47:06

目录

一:配置邮箱和姓名

二:生成SSH Key

三:git 工作区和状态

 四:git log 常用法 

五:git diff 常用法 

六:git 分支操作   

七:git 回溯分支

八:git rebase -i 压缩历史提交记录 

 九:推送到远程仓库

十:提交 Pull Request 流程

十一 接受 pull request

  


一:配置邮箱和姓名

$ git config --global user.name "Firstname Lastname"
$ git config --global user.email "your_email@example.com"
//让输出更具可读性
$ git config --global color.ui auto

二:生成SSH Key

ssh-keygen -t rsa -C "your_email@example.com"
//将生成的ssh-key配置到github上,然后测试 
ssh -T git@github.com

三:git 工作区和状态

 四:git log 常用法 

//提交信息只显示一行
$ git log --pretty=short

//显示文件改动
$ git log -p

//过滤提交内容
$ git log --grep 

//按作者过滤
$ git log --author

五:git diff 常用法 

//显示工作区与暂存区的差异
$ git diff

//显示工作区与本地仓库的差异
git diff HEAD

六:git 分支操作   

//新建分支
git checkout -b feature-A

//合并分支,将feature-A 分支合并到当前分支
git merge feature-A

//以图表形式查看分支
git log --graph

//以图形界面形式查看分支
gitk


七:git 回溯分支

//让仓库的 HEAD、暂存区、当前工作树回溯到指定状态
git rest --hard
//查看当前仓库执行过的操作的日志
git reflog

八:git rebase -i 压缩历史提交记录 

git rebase -i

 九:推送到远程仓库

//添加远程仓库
git remote add origin git@github.com:github-book/git-tutorial.git
//推送到远程分支,-u参数可以在推送的同时,将 origin 仓库的 master 分
支设置为本地仓库当前分支的 upstream(上游)
git push -u origin master

1 git push origin master:refs/heads/master
 是将本地的master分支推送到远程主机origin上的对应master分支, origin 是远程主机名,
 第一个master是本地分支名,
 第二个master是远程分支名。

 简写为: git push origin master


2 git push origin HEAD:refs/for/master

 origin : 是远程的库的名字
 HEAD: 是一个特别的指针,它是一个指向你正在工作的本地分支的指针, 
 可以把它当做本地分支的别名,git这样就可以知道你工作在哪个分支
 refs/for :意义在于我们提交代码到服务器之后是需要经过 code review 之后才能进行merge的
 refs/heads: 不需要
//我们试着将 feature-D 分支获取至本地仓库
git checkout -b feature-D origin/feature-D
//将本地的 feature-D 分支更新到最新状态(远程仓库的 feature-D) 
git pull origin feature-D

十:提交 Pull Request 流程

1. 先fork仓库

2. 克隆仓库
  git clone git@github.com:hirocastest/first-pr.git

3. 给原仓库设置 upstream 的名称,将其作为远程仓库 
  git remote add upstream git://github.com/octocat/Spoon-Knife.git
  git fetch upstream

4. 查看分支
  git branch -a

5. 创建分支
  git checkout -b work gh-pages

6. 推送到远程分支 
  git push origin work

7. 提交pull request

十一 接受 pull request

1. 克隆仓库
    git clone git@github.com:ituring/first-pr.git

2. 获取发送方远程仓库
    git remote add PR发送者 git@github.com:PR发送者/first-pr.git

3. 新建分支 
    git checkout -b pr1

4. 合并分支
    git merge PR发送者/work

5. 合并到主分支
    git checkout gh-pages
    git merge PR送信者/work

  

       

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

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

相关文章

UML之类图详解

犬余🐶 “我欲贱而贵,愚而智,贫而富,可乎? 曰:其唯学乎” 零、什么是类图 类图(Class Diagram)是面向对象系统建模中最常用和最重要的图,它通过图形化的方式展示系统中的…

数学建模笔记—— 蒙特卡罗法

数学建模笔记—— 蒙特卡罗法 蒙特卡罗法1. 模型原理2. 常见问题2.1 圆周率问题2.2 三门问题 蒙特卡罗法 1. 模型原理 提出: 蒙特卡罗方法于20世纪40年代美国在第二次世界大战中研制原子弹的“曼哈顿计划”的成员S.M.乌拉姆和J.冯诺依曼首先提出。数学家冯诺依曼…

《磊落轶荡 情寄菱花》——曹大铁先生书画文献展盛大开幕

出席文献展相关领导嘉宾合影 值2024年9月10日曹大铁先生诞辰108 周年之际,《磊落轶荡 情寄菱花》——曹大铁先生书画文献展在常熟市工人文化宫隆重揭幕。该展由曹大铁先生文学艺术弘扬、传承、研究的机构、国内外艺术名家、专家、收藏家、亲属等倡议;该…

芯片杂谈 -- 常聊的内核包含哪些模块

目录 1. R52内核速览 2. 处理器模块详解 3.内核的功能安全测什么? 4.小结 最开始接触到汽车MCU大都来自NXP、Infineon、Renesas,例如MPC5748、TC275、RH850 P1X等等; 而各大OEM、供应商等等发布的JD通常都会要求熟悉AURIX、PowerPC、G3K…

智能客服的演变:从传统到向量数据库的新时代

国产数据库的发展在21世纪初取得了显著的进展。根据不完全统计,目前在国内已有超过300种不同的数据库在案。这一现象在40年前几乎是不可想象的,标志着中国在数据库领域取得了巨大的突破和多样化选择。对于对老一辈的故事或数据库发展史充满兴趣的朋友们&…

从gerrit上拉取未合入的代码工程

一. 简介 本文简单学习一下,如何将 gerrit上未合入的代码拉取到本地。 二. 从gerrit上拉取未合入的代码工程 有时候本地的代码经过 自动化编译通过,提交到 gerrit上,但是有时候在代码实现上还需要做一些更改。这时候就需要从 gerrit上将这…

企业如何筛选达人进行投放?投放效果如何统计?

投放已经成为企业品牌营销策略的重要组成部分,如何去筛选出各平台的优质达人,以达到最大的投放效果,增强市场的竞争力呢?很多企业可能会借助一些官方投放平台数据进行分析,比如星图、蒲公英等。也可以用声量通进行账号…

精选干货!分享5款免费论文生成软件

在当今学术研究和写作领域,AI论文生成工具的出现极大地提高了写作效率和质量。这些工具不仅能够帮助研究人员快速生成论文草稿,还能进行内容优化、查重和排版等操作。以下是五款免费且功能强大的AI论文生成软件推荐: ### 1. 千笔-AIPassPaper…

【逐行注释】自适应Q的AUKF|MATLAB代码(附下载链接)

文章目录 逐行注释的说明运行结果自适应UKF介绍实现过程 部分代码各模块解释 逐行注释的说明 每一行都标有中文注释: 是我自己一个字一个字打的,如果有错别字等问题,欢迎指正。 运行结果 三轴的估计值、真值、滤波前的值对比&#xff1a…

家庭用超声波清洗机哪个品牌好用?好用的眼镜清洗机推荐

在我们的日常生活中,像眼镜、项链和耳环这些频繁使用的个人物品,经常面临灰尘积聚和细缝中难以触及的污渍问题。超声波清洗机凭借其深入微细缝隙的清洁能力,成为了解决这一难题的理想工具,确保了这些珍贵小物的彻底清新。不过现在…

魔搭上创建数据集

本文将介绍如何在魔搭上创建数据集,首先登录后通过网页创建数据库集。 通过 git 命令 clone 数据集 创建数据集,初始化训练数据和测试数据 train.csv,test.csv,注意 csv 的首行为列名称 创建子数据集,魔搭上子数据集…

智能监控中图像质量增强方法研究

粗略的构思步骤 摘要 本文深入探讨了智能监控系统中图像质量增强的关键技术,通过融合深度学习、传统图像处理算法及生成对抗网络(GAN)的优势,提出了一套高效且鲁棒的图像质量提升方案。本文详细描述了技术框架的每一个组成部分,深入剖析了技术原理,并详细阐述了实现步骤…

leecode100题-双指针-三数之和

给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k ,同时还满足 nums[i] nums[j] nums[k] 0 。请你返回所有和为 0 且不重复的三元组。 答案中不可以包含重复的三元组。 示例 1: 输入…

Kubernetes------Service

目录 一、属性说明 二、定义和基本配置 1、定义 2、创建Service 2.1、typeClusterIP 2.2、typeNodePort 2.3、固定IP访问 三、Service、EndPoint、Pod之间的关系 四、服务发现 1、基于Service中IP访问外部服务 2、基于Service中域名访问外部服务 五、Ingress的安装和使…

react js 路由 Router

完整的项目,我已经上传了 资料链接 起因, 目的: 路由, 这部分很难。 原因是, 多个组件,进行交互,复杂度比较高。 我看的视频教程 1. 初步使用 安装: npm install react-router-dom 修改 index.js/ 或是 main.js 把 App, 用 BrowserRouter 包裹起来 2. Navigate 点击…

JAVA基础: while循环,for循环,break和continue关键字,数组详解

1 while循环 while(boolean结果)语句/语句组 每次循环做什么事 循环条件 循环条件改变。 循环嵌套 在一个循环中,出现了另一个循环。 无限循环 循环条件永远为真。 int i 10 ; while(i > 0){//....i ; }------------------------- while(true){}2 break关键…

mysql的整理

插入数据: INSERT INTO 表名 (字段名1, 字段名2, ...) VALUES (值1, 值2, ...); insert into employee(id,workno,name,gender,age,idcard,entrydate) values(1,1,Itcast,男,-1,123456789012345678,2000-01-01); insert into employee values(3,3,韦一笑,男,38,1…

如何利用 CSS 渐变实现多样化背景效果

前言 总在平常看到像这样的图片 背景是如何实现的呢 背景效果的多样性和美观性直接影响用户体验。CSS 渐变为设计师提供了一种强大且灵活的方法来创建引人注目的背景。渐变是颜色之间平滑过渡的效果,通过调整渐变类型和设置,你可以轻松实现从简单到复杂…

和弦图制作软件有哪些,和弦音乐制作软件推荐

在音乐创作与教学领域,和弦图作为视觉化展现音乐和声结构的工具,扮演着至关重要的角色。随着技术的发展,众多和弦图制作软件应运而生,旨在简化创作流程,提升学习效率。然而,面对琳琅满目的选项,…

【Linux】多线程:线程控制

目录 一、创建线程:pthread_create 二、线程终止:pthread_exit、return、pthread_cancel 三、线程等待:pthread_join 四、线程分离:pthread_detach 五、如何创建并使用多线程 六、对线程进行封装 一、创建线程&#xff1a…