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

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 # 查看日志;

http://www.xdnf.cn/news/868177.html

相关文章:

  • [特殊字符] 深度剖析 n8n 与 Dify:使用场景、优劣势及技术选型建议
  • 常用的Docker命令
  • 得物GO面试题及参考答案
  • Quick UI 组件加载到 Axure
  • [杰理]蓝牙状态机设计与实现详解
  • Android 3D球形水平圆形旋转,旋转动态更换图片
  • (2025)Windows修改JupyterNotebook的字体,使用JetBrains Mono
  • 【计算机网络】第3章:传输层—TCP 拥塞控制
  • MaskSearch:提升智能体搜索能力的新框架
  • Qwen3与MCP协议:重塑大气科学的智能研究范式
  • 文献分析指令
  • SSM spring Bean基础配置
  • 代理ip的原理,代理ip的类型有哪些?
  • Vue全局事件总线
  • 【Cursor】开发chrome插件,实现网页tab根据域名分组插件
  • 区块链+AI融合实战:智能合约如何结合机器学习优化DeFi风控?
  • 使用 React Native 开发鸿蒙(HarmonyOS)运动健康类应用的系统化准备工作
  • Moticon智能鞋垫传感器OpenGo如何提升神经病学步态分析的精准性
  • 比较运算符:==、!=、>、<、>=、<=
  • 机器学习与深度学习10-支持向量机02
  • DAY43 复习日
  • 【和春笋一起学C++】(十七)C++函数新特性——内联函数和引用变量
  • [Java 基础]注释
  • 【LLMs篇】13:LLaDA—大型语言扩散模型
  • 省赛中药检测模型调优
  • 深度剖析 DeepSeek 开源模型部署与应用:策略、权衡与未来走向
  • 物联网控制技术期末复习 知识点总结 第二章 单片机
  • 【Hive入门】
  • 【网络】select、poll和epoll模型的区别
  • Kafka broker 写消息的过程