当前位置: 首页 > 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 # 查看日志;

相关文章:

  • 区块链跨链通信:使用 Cosmos SDK 实现链间互操作
  • 电子手机商城源码+springboot+vue3(带用户协同过滤个性化推荐算法)
  • gitlab rss订阅失败
  • 文献分析指令
  • Python 中 kwargs.get() 方法详解
  • IOS 打包账号发布上传和IOS Xcode证书配置
  • 【推荐算法】Embedding+MLP:TensorFlow实现经典深度学习推荐模型详解
  • JavaWeb:前端工程化-TS(TypeScript)
  • 吴恩达机器学习讲义概述
  • 【python深度学习】Day 44 预训练模型
  • superior哥AI系列第9期:高效训练与部署:从实验室到生产环境
  • 【面经分享】滴滴
  • 从 CLIP 和 Qwen2.5-VL 入门多模态技术
  • 多层感知器MLP实现非线性分类(原理)
  • Appium如何支持ios真机测试
  • n8n:解锁自动化工作流的无限可能
  • UDP包大小与丢包率的关系:原理分析与优化实践
  • Java 中 ArrayList、Vector、LinkedList 的核心区别与应用场景
  • 【C语言练习】080. 使用C语言实现简单的数据库操作
  • 【Linux】进程 信号保存 信号处理 OS用户态/内核态
  • 开网络公司做网站挣钱吗/网络营销战略
  • wordpress users/深圳外包seo
  • 企业购物网站建设/阳山网站seo
  • 网站制作素材全套/提高工作效率的方法有哪些
  • 网站建好了seo怎么做/重庆seo软件
  • 怎样查看网站总浏览量/以图搜图