栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Git项目管理-Github远程仓库访问HTTPS和SSH、将远程仓库克隆到本地、本地分支操作(查看、创建、切换、快速创建和切换、合并、删除、遇到冲突时分支合并)、远程分支操作

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Git项目管理-Github远程仓库访问HTTPS和SSH、将远程仓库克隆到本地、本地分支操作(查看、创建、切换、快速创建和切换、合并、删除、遇到冲突时分支合并)、远程分支操作

Github远程仓库使用

远程仓库的两种访问方式

基于HTTPS将本地仓库上传到GithubSSH

SSH key作用: 实现本地仓库和Github之间 免登录 的加密数据传输。SSH key由两部分组成,分别是:生成SSH key配置 SSH key检测 Github 的 SSH key 是否配置成功基于 SSH 将本地仓库上传到 Github 将远程仓库克隆到本地本地分支操作

查看分支列表创建新分支切换本地分支快速创建和切换 分支合并分支删除本地分支遇到冲突时 的 分支合并 远程分支操作

将本地分支推送到远程仓库查看远程仓库中,所有的分支列表跟踪分支拉取远程分支最新的代码删除远程分支

远程仓库的两种访问方式
    HTTPS:临时配置;每次访问仓库时,需要 重复输入Github的账号和密码才能访问成功SSH:需要进行额外的配置;配置成功后,每次访问仓库时,不需 重复输入Github的账号和密码

注意:在实际开发中,推荐使用 SSH 的方式访问远程仓库。

基于HTTPS将本地仓库上传到Github
# 1、本地没有现成的Git仓库
# 使用终端命令创建README.md文档,并写入初始内容为# project
echo "# project" >> README.md

# 初始化本地Git仓库,并将文件的修改提交到本地的Git仓库中
git init
git add README.md
git commit -m "first commit"

#创建main分支
git branch -M main

# 将本地仓库和远程仓库进行关联,并把远程仓库命名为orgin
git remote add origin https://github.com/liyong999/project.git

# 将本地仓库中的内容推送到远程的origin仓库中
git push -u origin main
# 2、本地有现成的 Git 仓库
# 将本地仓库和远程仓库进行关联,并把远程仓库命名为orgin
git remote add origin https://github.com/liyong999/project.git

#创建main分支
git branch -M main

# 第一次,将本地仓库中的内容推送到远程的origin仓库中
git push -u origin main

# 第二次或第三次,将本地仓库中的内容推送到远程的origin仓库中
git push
SSH SSH key作用: 实现本地仓库和Github之间 免登录 的加密数据传输。 SSH key由两部分组成,分别是:
    id_rsa(私钥文件,存放于客户端的电脑中)id_rsa.pub(公钥文件,需要配置到Github中)
生成SSH key
    打开Git Bash粘贴如下命令,并将 your_email@example.com 替换 为注册Github账号时填写的邮箱:
    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"连续敲3次回车,即可在 C:Users用户名文件夹.ssh 目录中生成 id_rsa 和 id_rsa.pub 两个文件
配置 SSH key
    使用记事本打开 id_rsa.pub 文件,复制里面文本内容在 浏览器 中登录 Github,点击头像→Settings→SSH and GPG keys→New SSH key将 id_rsa.pub 文件中的内容,粘贴到 Key对应的文本框中在在Title文本框中任意填写一个名称,来标识这个Key
检测 Github 的 SSH key 是否配置成功
    打开 Git Bash,输入命令ssh -T git@github.com看到 “Are you sure you want to continue connecting(yes/no)?”,输入 yes ,看到提示信息中有successfully,则证明 SSH key 已经配置成功
基于 SSH 将本地仓库上传到 Github
# 在 Github 中创建项目成功后,选择 SSH
# 本地有现成的 Git 仓库
# 将本地仓库和远程仓库进行关联,并把远程仓库命名为orgin
git remote add origin git@github.com:liyong999/project.git

#创建main分支
git branch -M main

# 第一次,将本地仓库中的内容推送到远程的origin仓库中
git push -u origin main

# 第二次或第三次,将本地仓库中的内容推送到远程的origin仓库中
git push
将远程仓库克隆到本地

打开 Git Bash ,输入命令git clone 远程仓库的地址

本地分支操作 查看分支列表

注意:分支名字前面 * 号表示 当前所处的分支。

# 查看当前 Git 仓库中所有分支列表
git branch
创建新分支

注意:建议在主分支,创建新分支

# 基于当前分支,创建一个新的分支
git branch 分支名称

# 基于当前分支,创建一个login分支
git branch login
切换本地分支
# 切换到指定的分支 上进行开发
git checkout 分支名称

# 切换到login分支 上进行开发
git checkout login
快速创建和切换 分支

注意:建议在主分支,创建新分支

# -b 表示创建一个新分支
# checkout 表示切换到刚才新建的分支上
# 创建指定名称的新分支,并立即切换到新分支上
git checkout -b 分支名称

# 创建reg的新分支,并立即切换到reg分支上
git checkout -b reg
合并分支

功能分支代码开发测试完成后,可以使用如下命令,将完成后的代码合并到master主分支上:

# 1.切换到master分支
git checkout master

# 2.在 master 分支上运行 git merge 命令,将 login 分支的代码合并到 master 分支
git merge login
删除本地分支

注意:建议在主分支,删除其它分支

当把功能分支的代码合并到 master 主分支后,就可以使用如下命令,删除对应的功能分支:

# 切换到master分支
git checkout master

# 删除对应的功能分支
git branch -d 分支名称

# 删除本地的login分支
git branch -d login

# 强制删除本地的login分支,如果没有合并到主分支,不会提示
git branch -D login
遇到冲突时 的 分支合并

如果 在两不同的分支中,对 同一个文件 进行了 不同的修改,Git 就没法合并它们。此时,我们需要打开这些包含冲突的文件,然后 手动解决冲突

# 假设:在把 reg 分支合并到 master 分支期间,代码发生了冲突
# 切换到master分支
git checkout master
# 在 master 分支上运行 git merge 命令,将 reg 分支的代码合并到 master 分支
git merge reg

# 打开 包含冲突的文件,手动解决冲突,之后,再执行如下命令
# 一次将所有新增和修改过的文件加入暂存区
git add .
# 提交更新,将暂存区中的文件提交到Git仓库
git commit -m "解决了分支合并冲突的问题"
远程分支操作 将本地分支推送到远程仓库

注意:第一次推送分支需要带 -u 参数,此后可以直接使用 git push 推送代码到远程分支。

如果是 第一次 将本地分支推送到远程仓库,需要运行如下命令:

# -u 表示把本地分支和远程分支进行关联,只在第一次推送的时候需要带 -u 参数
git push -u 远程仓库的别名 本地分支名称:远程分支名称

# 第一次推送,远程仓库origin,本地分支名reg,远程分支名register
git push -u origin reg:register

# 如果希望 远程分支的名称 和 本地分支名称 保持一致为reg,可以对命令进行简化:
git push -u origin reg
查看远程仓库中,所有的分支列表
# 查看远程仓库中,所有的分支列表
git remote show 远程仓库名称

# 查看远程仓库(默认远程仓库:origin)中,所有的分支列表
git remote show origin
跟踪分支

跟踪分支指的是:从远程仓库中,把远程分支下载到本地仓库中。

# 从远程仓库中,把对应的远程分支下载到本地仓库,保持本地分支和远程分支名称相同
git checkout 远程分支的名称

# 从远程仓库中,把对应的远程分支下载到本地仓库,保持本地分支和远程分支名称相同(register)
git checkout register

# 从远程仓库中,把对应的远程分支下载到本地仓库,并把下载到本地的分支进行重命名
git checkout -b 本地分支名称 远程分支的名称/远程分支名称

# 从 远程仓库(origin) 中,把对应的 远程分支(register) 下载到本地仓库,并把下载到 本地的分支进行重命名(reg)
git checkout -b reg origin/register
拉取远程分支最新的代码
# 从远程仓库,拉取当前分支最新的代码,保持当前分支的代码和远程分支代码一致
git pull
删除远程分支

注意:建议在主分支,删除其它分支

# 切换到master分支
git checkout master

# 删除远程仓库中,指定名称的远程分支
git push 远程仓库名称 --delete 远程分支名称

# 删除 远程仓库(默认名:origin) 中 register 远程分支
git push origin --delete register
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/729753.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号