如何查看网站图片尺寸,计算机培训短期速成班,开源购物商城,天津网页制作设计营销本节所讲内容均涉及到 远端版本库。
版本库 的概念在《TortoiseGit 入门指南02#xff1a;创建和克隆仓库》中提到过#xff0c;它是工作目录下面的一个名为 .git 的隐藏目录#xff0c;我们每一次提交、每一个分支都会保存在版本库中。这个版本库就在我们电脑上的某个文件…本节所讲内容均涉及到 远端版本库。
版本库 的概念在《TortoiseGit 入门指南02创建和克隆仓库》中提到过它是工作目录下面的一个名为 .git 的隐藏目录我们每一次提交、每一个分支都会保存在版本库中。这个版本库就在我们电脑上的某个文件夹内所以也称为 本地版本库 。
远端版本库 通常是放在托管平台上的版本库通过这种方式可以备份代码、随时随地获取代码、与其他人员协同工作等。常见的托管平台有 Github国内访问速度受限和 gitee 国内托管平台访问速度快。
本地版本库 与 远端版本库 之间的交互主要涉及到 克隆 、拉取 、抓取、推送 这几个操作。其中 克隆 已经在《TortoiseGit 入门指南02创建和克隆仓库》中讲过这里不再赘述重点关注
推送push向远端版本库同步数据拉取pull和 抓取fetch从远端版本库同步数据
它们的关系用一张图表示为 图中出现的概念如工作区 、版本库 、 提交 等在之前的文章中均有提及这些基本概念需要读者理解这是用好 Git 的基础。
1 云托管平台设置
以 Gitee 托管平台为例。
1.1 注册 Gitee
在官网注册点击这里。
1.2 创建SSH秘钥(key)
在任意位置单击鼠标右键在弹出的右键菜单中单击 Git Bash Here 打开 Git 命令行界面。
在 git 命令行界面中输入
ssh-keygen -t rsa -C email email 是你设置 Git 时用到的电子邮箱邮箱要在双引号内。
此时C:\Users\用户名.ssh目录下会生成两个文件id_rsa 和 id_rsa.pub把 id_rsa.pub 文件中的内容复制下来。
1.3 设置远程仓库 SSH 秘钥
打开你的 Gitee 主页点击账户设置 - 安全设置 - SSH 公钥把刚才复制的 ssh 秘钥粘贴到公钥输入框中。
1.4 创建远端仓库 这里创建一个名为 demo 的测试仓库。新的仓库什么也没有我们先复制这个仓库的 SHH 地址。
2 推送
使用推送Push将本地更改同步到远端版本库。
在仓库中右击鼠标 - TortoiseGit - Push... 打开推送对话框 2.1 推送源Ref Local源分支该分支将被推送到远端版本库。 Remote远端版本库分支名远端版本库可能有多个分支比如master分支用于稳定版本平时开发在develop分支上进行当推送的时候需要指定推送到哪个分支上。 注如果不填写远端版本库分支名则推送到远程仓库的默认分支将哪个分支设置为默认分支可以在远端版本库修改。 这就意味着如果用master分支存储稳定版本则不要将它设置为默认分支以免将开发版本错误的推送到master分支上。
2.2 推送目的地Destination
Remote选择一个已配置的远端版本库。如果还没有配置过点击Manage在弹出的设置页面中配置一个远端版本库如下图所示。在 URL 处填写刚刚复制的远端版本库 SSH 地址点击“确定”按钮完成与远端版本库的关联。 Arbitrary URL也可以使用远端版本库的 URL 远端版本库应该是一个裸仓库。 2.3 选项Options Force: May discard known changes强制推送可能丢失已知更改会使用 --force-with-lease 选项可以防止丢失远程仓库其他人的未知更改。需小心使用一旦使用此选项表明本地仓库与远程仓库出现了冲突建议先拉取代码在本地解决冲突后再进行推送。 Force: May discard unknown changes强制推送可能丢失未知更改会使用 --force 选项可能导致远程仓库其他人的更改丢失需要慎重使用。一旦使用此选项表明本地仓库与远程仓库出现了冲突建议先拉取代码在本地解决冲突后再进行推送。 Include Tags将本地标签推送到远端版本库。默认情况下推送内容时不包含标签的如果要将标签推送到远端版本库需要手动勾选此选项。 Set upstream/track remote branch跟踪远程分支。 跟踪远程分支意味着将本地分支与远程分支关联起来。比如远程有三个分支 master、develop 和 feature其中 develop 分支作为默认分支但有一段时间我们需要在 feature 分支上开发一个新功能在这期间所有的更改都要推送到 feature 分支解决方法是每次推送时都在推送对话框的 Remote 处手动填写 feature。这样很不方便我们可以在推送到 feature 分支时勾选 Set upstream/track remote branch 选项这样就将本地分支与远程 feature 分支之间建立了关联下次再推送的时候TortoiseGit 会自动帮我们填写 feature就不必担心不小心将更改推送到默认的 develop 分支上去。
3 拉取和抓取
拉取pull和抓取fetch都是从远端版本库中获取更改的方法区别在于抓取只将数据下载到你的本地版本库它不会自动合并或修改你当前的工作区拉取不仅将数据下载到你的本地版本库还会自动合并到当前版本库并更新当前工作区。
在仓库中右击鼠标 - TortoiseGit - Pull... 打开拉取对话框
在仓库中右击鼠标 - TortoiseGit - Fetch... 打开抓取对话框。
这里以拉取对话框为例抓取对话框与之相似。 Tags复选框有三种状态选中表示下载所有Tag和分支、未选中表示不下载Tag、部分选中表示使用默认设置。 Prune复选框有三种状态选中表示删除远程上不再存在的远程跟踪分支、未选中表示不删除、部分选中表示使用默认设置。 Tags复选框 和 Prune复选框 的默认设置可以在 TortoiseGit - Settings - Git - Remote 中设置 读后有收获资助博主养娃 - 千金难买知识但可以买好多奶粉 (〃‘▽’〃)