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