当前位置: 首页 > article >正文

Git Github Gitee GitLab

Git的工作流程

工作区(Workspace):电脑本地目录,即平时存放项目代码的地方

暂存区(Index/Stage):临时存放改动信息的地方

本地仓库(Repository):存放所有提交的版本数据

远程仓库(Remote):托管代码的服务器,如Github、GItLab等

在电脑本地的工作区中添加或删除或修改文件

将工作区中修改的文件放入暂存区 (git add xxx)

将暂存区的文件提交到git本地仓库 (git commit)

将本地仓库推送到远程仓库 (git push)

从远程仓库中拉取到本地 (git pull)

Git的常用命令

git init
git add README.md
git commit -m "first commit”第一次提交
git branch -M main
git remote add origin https://github.com/Cynthia-shi/库名字.git
git push -u origin main

================Git===================================

Git介绍

Git是分布式版本控制工具,用来管理本地的代码工程,它可以记录代码内容的变更。

Git常见操作

初始化本地仓库

git init # 方法一:cd到想要创建本地仓库的目录后,使用以下命令,此时目录中会生成一个.git文件夹
git clone https:github.com/xxx/xxx.git # 方法二:从远程仓库克隆一个仓库

设置用户名 邮箱

git config --global user.name “six”
git config --global user.email sxx@sina.com

将已修改文件添加至暂存区

git add filename # 添加指定的文件到暂存区
git add . # 添加所有已修改的文件到暂存区

查看本地库状态

git status

将暂存区的文件提交到git本地仓库

git commit -m "第一次修改" # ""中是本次修改的简要信息说明注释

查看日志

git reflog # 查看版本信息
Git log # 查看详细版本信息

版本穿梭

git reset --hard 版本号 # 回到(版本号)版本

查看用户名 邮箱

git config user.name
git config user.email

查看其他配置信息

git config --list

查看git版本

git --version

删除仓库有好几个不同的涵义:

断开本地git仓库与远程仓库的链接:git remote rm origin
删除远程仓库: 删除github的仓库repository
删除git本地仓库: rm -rf .git

标签 tag

git tag # 列举所有标签
git tag -1 "V1.*" # 列举包含指定字符的标签
git tag -a v1.0 -m "标签附注信息" # 创建标签
git push origin <tagname> # 推送标签
git push origin --tags # 推送所有标签
git tag -d <tagname> # 删掉本地仓库上的指定标签
git push remote :refs/tags/<tagname> # 上述指令不会删除远程仓库中的标签,需使用这个命令来更新远程仓库
git checkout v1.0 # 切换标签 将git仓库的HEAD指针指向vi.0标签所在的提交

Git分支

查看分支(初始时git中只有一个master分支)
git branch -v新建一个分支
git branch 分支名 #创建一个新分支
git checkout -b 分支名 # 创建一个新分支并切换到该分支切换分支
git checkout 分支名 # 切换到(分支名)分支合并分支
git merge 分支名 # 将分支合并到master上合并分支冲突
git merge 分支名 -> 两个分支都有修改则合并冲突报错 -> 手动修改文件删掉指针和字符 -> git add . -> git commit -m “备注”
# 将分支合并到master上

Git团队协作机制

团队内协作

跨团队协作

===============Github=================================

Github介绍

Github是一个代码托管平台,可以使用Git将本地代码上传到Github 。

GitHub网址:https://github.com

Github常见操作:

​
创建远程库
登陆GitHub点击右上角的+号 -> New repository -> 命名 -> 公有库/私有库 -> Creat repository查看远程库别名(一个远程库两个别名推送拉取)
git remote -v创建远程库别名
git remote add 远程库别名 远程库地址推送本地分支到远程库
git push 远程库别名 本地分支名拉取远程库到本地库
git pull 远程库别名 远程分支名克隆远程库到本地
git clone 远程库地址

邀请加入团队

登陆GitHub进入远程库->Settings->Manage access->Invite a collaborator->输入账号邀请->Pending Invite->复制粘贴邀请函发送给成员->成员复制粘贴邀请函并接受邀请

团队内协作

团队成员克隆远程库到本地->修改内容->git add .->git commit->git push 远程库别名 本地分支名->或者直接在远程GitHub上修改

跨团队协作

协助人:搜索要协作的项目->右上角fork->在线编辑/克隆本地修改代码->提交改后代码->左上角pull request->new pull request->create pull request->核对修改内容,编辑修改标注,与被协助人沟通的话->create pull request

被协助人:打开项目->左上角pull request后面出现“圈1”->点击pull request->查看协助人的修改文件review change->可评论聊天comment->合并协作人提交的代码merge pull request-> 确认合并confirm merge

(精准搜索:用户名/项目名)

SSH免密登陆

本地:ssh-keygen生成密钥->一直回车->cat ~/.ssh/id_rsa.pub->复制显示内容

GitHub:账户头像->settings->SSH and GPG keys->填写标题->粘贴公钥->Add SSH key

本地:ssh -T git@github.com 验证是否成功

=================Gitee=================================

Gitee介绍

Gitee是一个中国的代码托管平台,可以使用Git将本地代码上传到Gitee 。

Gitee网址:Gitee - 企业级 DevOps 研发效能平台

Gitee常见操作与GitHub类似:

创建远程库推送本地分支到远程库拉取远程库到本地库克隆远程库到本地邀请加入团队团队内协作跨团队协作SSH登陆Gitee导入GitHub项目

================GitLab=================================

GitLab介绍

GitLab是一个公司私有的代码托管平台,局域网代码托管中心。

GitLab网址:https://about.gitlab.com

GitLab常用命令:

sudo gitlab-ctl start # 启动所有 gitlab 组件;
sudo gitlab-ctl stop # 停止所有 gitlab 组件;
sudo gitlab-ctl restart # 重启所有 gitlab 组件;
sudo gitlab-ctl status # 查看服务状态;
sudo gitlab-ctl reconfigure # 启动服务;
sudo vim /etc/gitlab/gitlab.rb # 修改默认的配置文件;
gitlab-rake gitlab:check SANITIZE=true --trace # 检查gitlab;
sudo gitlab-ctl tail # 查看日志;

相关文章:

Git Github Gitee GitLab

Git的工作流程 工作区(Workspace)&#xff1a;电脑本地目录&#xff0c;即平时存放项目代码的地方 暂存区(Index/Stage)&#xff1a;临时存放改动信息的地方 本地仓库(Repository)&#xff1a;存放所有提交的版本数据 远程仓库(Remote)&#xff1a;托管代码的服务器&#x…...

华为设备OSPF配置与实战指南

一、基础配置架构 sysname HUAWEI-ABR ospf 100 router-id 1.1.1.1area 0.0.0.0network 10.1.1.0 0.0.0.255 # 将接口加入区域0 interface GigabitEthernet0/0/1ospf enable 100 area 0.0.0.0 # 华为支持点分十进制区域号bandwidth-reference 10000 # 设置10Gbps参考带宽…...

Paraformer分角色语音识别-中文-通用 FunASR

https://github.com/modelscope/FunASR/blob/main/README_zh.md https://github.com/modelscope/FunASR/blob/main/model_zoo/readme_zh.md PyTorch / 2.3.0 / 3.12(ubuntu22.04) / 12.1 Paraformer分角色语音识别-中文-通用 https://www.modelscope.cn/models/iic/speech_p…...

Spitfire:Codigger 生态中的高性能、安全、分布式浏览器

Spitfire 是 Codigger 生态系统中的一款现代化浏览器&#xff0c;专为追求高效、隐私和分布式技术的用户设计。它结合了 Codigger 的分布式架构优势&#xff0c;在速度、安全性和开发者支持方面提供了独特的解决方案&#xff0c;同时确保用户对数据的完全控制。 1. 高性能浏览…...

vimadbgit命令

vim 全部选中 全选&#xff08;高亮显示&#xff09;&#xff1a;按esc后&#xff0c;然后ggvG或者ggVG 全部复制&#xff1a;按esc后&#xff0c;然后ggyG 全部删除&#xff1a;按esc后&#xff0c;然后dG -----------------------------------------------------------------…...

运行shell脚本时报错/bin/bash^M: 解释器错误: 没有那个文件或目录

Windows的换行符为\r\n&#xff0c;而linux换行符为\n。先查看一下文件是什么格式的 :set ff --查询一下格式是什么 由于使用nodepad新建的脚本&#xff0c;首选项中格式设置成了windows&#xff0c;上传到linux中报错。 解决方法 1、nodepad中【设置》首选项】修改为unix&am…...

2506,wtl的通知事件

通知事件 最后一步,通知(连接)控件CMainDlg想要接受的浏览器控件触发的消息.连接在OnInitDialog(),断开在OnDestroy(). VC6中连接 VC6中,ATL的全局函数,AtlAdviseSinkMap()通知(连接)对话框中所有控件开始或终止发送事件到C对象. 该该函数的第一个参数是一个指向拥有事件映射…...

Shiro安全权限框架

①、添加依赖 ②、创建ini文件 获取权限相关信息可以通过数据库获取&#xff0c;也可以通过ini配置文件获取 ③、认证代码 public class ShiroRun{public static void main(){//初始化获取SecurityManagerIniSerucityManagerFactory factory new IniSecurityManagerFac…...

虚拟现实教育终端技术方案——基于EFISH-SCB-RK3588的全场景国产化替代

一、VR教育终端技术挑战与替代价值 ‌实时交互性能瓶颈‌ 赛扬N100/N150仅支持3DOF渲染&#xff08;延迟&#xff1e;25ms&#xff09;&#xff0c;动态手势识别帧率≤15FPS&#xff0c;难以满足6DOF教学场景需求RK3588 Mali-G610 GPU支持6DOF空间渲染&#xff08;延迟≤12ms&…...

深入理解CSS浮动:从基础原理到实际应用

深入理解CSS浮动&#xff1a;从基础原理到实际应用 引言 在网页设计中&#xff0c;CSS浮动&#xff08;float&#xff09;是一个历史悠久却又至关重要的概念。虽然现代布局技术如Flexbox和Grid逐渐流行&#xff0c;但浮动仍然在许多场景中发挥着重要作用。本文将带你深入理解…...

代码训练LeetCode(22)研究者H指数

代码训练(22)LeetCode之研究者H指数 Author: Once Day Date: 2025年6月4日 漫漫长路&#xff0c;才刚刚开始… 全系列文章可参考专栏: 十年代码训练_Once-Day的博客-CSDN博客 参考文章: 274. H 指数 - 力扣&#xff08;LeetCode&#xff09;力扣 (LeetCode) 全球极客挚爱的…...

网络安全A模块专项练习任务五解析

任务五:Linux 操作系统安全配置-1 任务环境说明: ✓ 服务器场景:LinuxServer:(开放链接) ✓ 用户名:root&#xff0c;密码:123456 ✓ 数据库用户名:root&#xff0c;密码:123456 请对服务器 LinuxServer 按要求进行相应的设置&#xff0c;提高服务器的安全性。 1.设置最小…...

git cli 基于远程master分支创建本地分支并切换

1、获取远程最新状态 git fetch origin2、从远程master创建本地分支并切换 git checkout -b new-branch-name origin/master或者&#xff0c;新版本写法 git switch -c new-branch-name origin/master3、如果要推送到远程&#xff0c;并建立跟踪&#xff0c;执行下面的命令 …...

Redis初入门

Nosql&#xff1a;Not-Only SQL&#xff08;泛指非关系型数据库&#xff09;&#xff0c;作为关系型数据库的补充 作用&#xff1a;应对基于海量用户和海量数据前提下的数据处理问题 redis&#xff1a;C语言开发的一个开源的高性能键值对数据库 特征&#xff1a; 1、数据之…...

(10)Fiddler抓包-Fiddler如何设置捕获Firefox浏览器的Https会话

1.简介 经过上一篇对Fiddler的配置后&#xff0c;绝大多数的Https的会话&#xff0c;我们可以成功捕获抓取到&#xff0c;但是有些版本的Firefox浏览器仍然是捕获不到其的Https会话&#xff0c;需要我们更进一步的配置才能捕获到会话进行抓包。 2.环境 1.环境是Windows 10版…...

使用pandas实现合并具有共同列的两个EXCEL表

表1&#xff1a; 表2&#xff1a; 表1和表2&#xff0c;有共同的列“名称”&#xff0c;而且&#xff0c;表1的内容&#xff08;行数&#xff09;<表2的行数。 目的&#xff0c;根据“名称”列的对应内容&#xff0c;将表2列中的“所处行业”填写到表1相应的位置。 实现代…...

2025年- H69-Lc177--78.子集(回溯,组合)--Java版

1.题目描述 2.思路 3.代码实现 class Solution {public List<List<Integer>> subsets(int[] nums) {List<List<Integer>> resnew ArrayList<>();List<Integer> curnew ArrayList<>();//从索引0开始递归backtracking(res,cur,nums,0…...

目标检测任务的评估指标mAP50和mAP50-95

mAP50 和 mAP50-95 是目标检测任务中常用的评估指标&#xff0c;用于衡量模型在不同 交并比&#xff08;IoU&#xff09;阈值 下的平均精度&#xff08;Average Precision, AP&#xff09;。它们的区别主要体现在 IoU 阈值范围 上。 ✅ 1. mAP50&#xff08;mean Average Prec…...

C++String的学习

1、C语言中的字符串 C语言中&#xff0c;字符串是以’\0’结尾的一些字符的集合&#xff0c;为了操作方便&#xff0c;C标准库中提供了一些str系列的库函数&#xff0c;但是这些库函数与字符串是分离开的&#xff0c;不太符合OOP的思想&#xff08;即面向对象编程&#xff08;…...

java day15 (数据库)

进入数据库的学习 DB 因为数据太多了&#xff0c;方便统一管理的软件 操作就不用改代码了&#xff0c;直接改数据库则可&#xff1b; 命令就是sql语句 这些都是关系型数据库&#xff0c;sql可以控制全部&#xff0c;至于具体的环境我以前就有安装过了&#xff1b; 理解&am…...

SQL 中 IN 和 EXISTS 的区别

SQL 中 IN 和 EXISTS 的区别 1. 基本概念 1.1 IN 运算符 IN 是一个条件运算符,用于检查某个值是否存在于指定的值列表中或子查询返回的结果集中。 SELECT * FROM employees WHERE department_id IN (SELECT id FROM departments WHERE location = New York)...

多线程爬虫使用代理IP指南

多线程爬虫能有效提高工作效率&#xff0c;如果配合代理IP爬虫效率更上一层楼。作为常年使用爬虫做项目的人来说&#xff0c;选择优质的IP池子尤为重要&#xff0c;之前我讲过如果获取免费的代理ip搭建自己IP池&#xff0c;虽然免费但是IP可用率极低。 在多线程爬虫中使用代理I…...

前端面试真题(第一集)

目录标题 1、跨域问题及解决方法同源策略生产环境解决方案开发环境解决方案其他解决方案 2、组件间通信方式Vue2中的组件通信方式Vue3中的组件通信方式通用注意事项 3、微信小程序生命周期微信小程序原生生命周期UniApp生命周期 4、微信小程序授权登录流程登录流程手机号获取 5…...

电脑安装系统蓝屏的原因

1. 内存故障 原因&#xff1a;内存条接触不良、损坏或兼容性问题&#xff08;如不同品牌 / 频率的内存混用&#xff09;。表现&#xff1a;蓝屏代码可能包含 MEMORY_MANAGEMENT、PAGE_FAULT_IN_NONPAGED_AREA 等。排查方法&#xff1a; 重新插拔内存条&#xff0c;清理金手指灰…...

TDengine 高级功能——流计算

简介 在时序数据的处理中&#xff0c;经常要对原始数据进行清洗、预处理&#xff0c;再使用时序数据库进行长久的储存&#xff0c;而且经常还需要使用原始的时序数据通过计算生成新的时序数据。在传统的时序数据解决方案中&#xff0c;常常需要部署 Kafka、Flink 等流处理系统…...

expect程序交互学习

文章目录 一、初级语法学习二、例子 一、初级语法学习 1.使用expect进行ssh另一台机器 [rootlocalhost ~]# yum install -y expect #先安装expect [rootlocalhost ~]# vim expect1.sh #!/usr/bin/expect spawn ssh root192.168.68.244 expect {"yes/no" {send "…...

05.字母异位词分组

题意理解 &#x1f9e0; 什么是“字母异位词”&#xff1f; 字母异位词是指由相同的字母组成&#xff0c;只是排列顺序不同的单词。 比如&#xff1a; "eat" 和 "tea" 是异位词&#xff0c;它们都包含 e、a 和 t。"ate" 也是它们的异位词。但…...

Mac查看MySQL版本的命令

通过 Homebrew 查看&#xff08;如果是用 Homebrew 安装的&#xff09; brew info mysql 会显示你安装的版本、路径等信息。 你的终端输出显示&#xff1a;你并没有安装 MySQL&#xff0c;只是查询了 brew 中的 MySQL 安装信息。我们一起来看下重点&#xff1a; &#x1f9fe…...

【.net core】【watercloud】树形组件combotree导入及调用

源码下载:combotree: 基于layui及zTree的树下拉框组件 链接中提供了组件的基本使用方法 框架修改内容 1.文件导入&#xff08;路径可更具自身情况自行设定&#xff09; 解压后将文件夹放在图示路径下&#xff0c;修改文件夹名称为combotree 2.设置路径&#xff08;设置layu…...

[Java 基础]面向对象-封装

封装是构建健壮、可维护和安全软件的基础。 什么是封装&#xff1f; 想象一下你的手机。你不需要知道手机内部复杂的电路、芯片和各种组件是如何协同工作的&#xff0c;你只需要知道如何使用屏幕、按键或触摸操作来打电话、发短信或玩游戏。手机的内部细节被“包裹”起来&…...