Git
Git基本原理:https://www.yuque.com/tintoki/gl9lfg/qidpe7
语雀的文章大致上简单的介绍了git的一些细节,但是我相信很多人学git只是为了把github当作一个仓库来保存自己的一些文件或者只是想知道git到底是怎么玩的,并不乐意花时间看那些生涩的概念。这篇博客主要介绍两种常用的Git图形化管理工具,相比于纯使用git命令行,这两个工具能更轻松的对文件进行管理。
一、图形化管理工具
Git Extensions 和 TortoiseGit 都是用于与 Git 版本控制系统集成的工具,两者之间的区别如下:
- Git Extensions:Git Extensions 是一个独立的 Git GUI 客户端,它提供了一套图形用户界面 (GUI) 工具,用于帮助用户更轻松地使用 Git。Git Extensions 可以在 Windows 操作系统上使用,并提供了诸如提交、克隆、分支管理、合并等功能,同时还包括一些可视化的工具,以帮助用户查看提交历史和分支结构等。Git Extensions 是一个开源项目,可以免费使用,并提供了一些附加功能,如 Git LFS 支持等。
- TortoiseGit:TortoiseGit 是另一个用于 Windows 的 Git GUI 客户端,它集成到 Windows Explorer 文件管理器中,允许用户在文件和文件夹上右键单击以执行 Git 操作。TortoiseGit 的设计目标是提供一种简单、直观的方式来管理 Git 存储库,特别是对于那些习惯使用 Windows 资源管理器的用户来说。TortoiseGit 是一个独立的项目,也是开源软件。
尽管两者是两个不同的项目,但它们都是为 Windows 操作系统开发的 Git 图形界面工具。用户可以根据偏好选择使用其中一个,或者甚至两者都使用,以根据具体任务和需求来执行 Git 操作。这两个工具的目标都是使 Git 更易于使用,并提供直观的方式来管理代码版本控制。
1.Git Extensions
1.1 下载和安装
参考链接(没啥技术含量,一直下一步就完事):
老版的Git Extensions安装包会在安装的同时提示一起安装Git和kdiff,现在比较新的版本应该是没有这个选项了,需自行安装。Git Extensions安装完成后打开软件可能会出现如下提示,安装额外运行时即可
第一次进入软件需要进行一些设置,链接文章中有很详细的介绍不再赘述,下图是我本地的一个setting界面,注意不同用户可能因为原始环境提示信息不同,一项一项照着repair即可
- 第一行提示Git版本过旧,懒得更新了将就用没什么问题;
- 第三行意思是需要配置比较工具kdiff,恰好我本地没有安装过因此检测不到,kdiff下载地址:[KDiff3 download | SourceForge.net],下载过后一直下一步即可。安装好kdiff后进行如下配置即可
- 最后一行提示没有设置语言,点击repair选择简体中文即可;
当setting中的配置全绿即可开始使用
1.2 Git Extensions实战
参考文章:
1.2.1 创建本地库
进入本地需要上传到Github的目录中,右键选择创建新的仓库
默认直接创建即可
1.2.2 创建远程库
进入Github,新建仓库,填入仓库名和描述(可选)其他维持默认即可
创建仓库成功后,复制如下网址到剪切板
1.2.3 提交&推送
回到本地库的目录,右键选择Commit(提交)
输入提交信息(随便写写),然后选择提交并推送(提交是提交到本地仓库,推送是推送到远程仓库Github)
出现以下弹窗表明当前目录没有文件被修改,选择第一个即可
这一步表示提交到本地库成功,接下来点击“确定”进入推送到远程库的环节
本地库第一次推送到远程库的时候需要进行配置(实际就是告诉本地库推送的网址是什么),选择“是”
名称可以随意填写,网址使用刚才复制到剪切板的网址,填写完毕后点击保存出现如下弹窗,选择“是”(后续出现的选择分支、跟踪什么弹窗都默认选择“是”即可)
如果出现如下报错表明访问Github超时(没啥好的解决办法,可以稍微等会再试试),点击确定退出推送即可
每一次推送都面临不成功的可能,在推送过程中遇到这种推送失败的报错是很常见的。不必过分担心,之前的内容修改已经保存到本地库,只需要后续等待网络稳定再推送即可(检验网络是否稳定的方法就是去访问Github,能访问成功就OK)
出现如下弹窗表明推送成功
在Github的仓库中也可以看到相应的文件
2.Tortoisegit
为什么有了Git Extensions还需要Tortoisegit?因为Git Extensions 右键菜单中只有对整个 Repository(仓库)的操作,但是没有 Tortoisegit 那样简便的网络仓库的(PULL 和 PUSH)(拉取和推送)的操作。Git Extensions具有项目代码的编辑功能,而Tortoisegit 完全是版本控制工具,无法对项目进行修改(需要借助其他工具编辑)。
2.1 下载和安装
参考文章:
2.2 Tortoisegit实战
2.2.1 新建git项目
(1)首先新建github项目(gitee操作类似不再赘述)
(2)新建完成项目以后打开项目,点击克隆、下载,复制这串地址
(3)在本地新建或直接选择需要上传的文件夹,右键进入文件夹内,右键新建版本库
(4)右键设置
点击右侧远端,将之前码云或者github上面的那串复制的http地址写入url以及推送url里面,先点击添加/保存,跳出的框不用做任何修改,直接确定
2.2.2 提交&推送
之后我们需要对仓库的内容进行更新,只需要先提交,再推送即可,需要注意的是,提交只是提交到本地版本库,并非提交到远程版本服务器,所以,要想在远程版本服务器上看到最新的修改,还需要推送;
我们新建的仓库在完成了1.1的配置之后还没有东西,我们这里来进行同步更新;
需要注意提交弹出框的日志信息一定要写(随便写点啥),不然无法选中提交按钮
在提交完成后会自动弹出推送框,直接选择即可
在推送成功后会出现创建拉取请求的按钮,此时直接关闭该弹窗即可
接着来到github对应仓库刷新,可以看到已经有了我们需要的文件
Q:同步和推送有什么区别?
A:提交commit指的是将本地的修改提交到本地库中,推送push指的是将本地的修改提交到远程库中,这是我们最常用的两个命令,更新作为小乌龟自增的命令,实际上就是继承了推送、拉取等动作(同步顾名思义就是保持本地和远端一致,保持一致的方法有很多,需要用户选择一种方式),一般不需要使用;
注意:git的使用当然并不只是这么简单,我们只是总结了日常最常用的动作,如果需要深入使用git还是需要掌握一定的git基本知识的,可以参考文章https://www.yuque.com/tintoki/gl9lfg/qidpe7进行学习;
2.2.3 问题汇总
推送远端报错
1 |
|
这是由于远端和本地不同步(很有可能是因为在Github手动添加了一些文件),解决方法很简单,只需要先将远端的pull下来(会自动合并不用担心文件被修改)
1 |
|
重新push即可;