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 # 查看日志;
相关推荐
lazy H1 小时前
从入门到日常开发,一篇文章掌握 Git 核心操作
git·后端·学习·github
zzqssliu9 小时前
煤炉自动代拍系统的队列设计与超时控制机制
git·github
一支绝命钩9 小时前
FPGA工程Git常用操作手册
git
fthux11 小时前
“装闭”,让装修套路“装”不下去
人工智能·ai·开源·github·open source
不搞学术柒柒13 小时前
Git新功能完整开发提交流程
git
用户849137175471614 小时前
想做护眼工具却脑子一片空白?我用 OpenSpec 把模糊想法聊成了 v0.1
github·vibecoding
wangruofeng15 小时前
git-filter-repo 把 .git 从 112MB 砍到 1.4MB,但漏推 tag 让 clone 又胖回来
github·devops
峰向AI16 小时前
Block 放出大招!Buzz:一个中继统一代码、聊天、CI 全流程
github
dong_junshuai16 小时前
每天一个开源项目#47 4.4K Stars 的 LikeC4:让架构图随代码进化
github
午安~婉17 小时前
Git中SSH连接
前端·git·gitee