Git/Github + TortoiseGit 使用教程
本文为作者原创,转载请注明出处:https://www.cnblogs.com/zhaoqingqing/p/5151192.html
前言#
Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。
在github上有很多优秀的项目,一个伟大的学习宝库。本文分享使用tortoisegit对github/oschina等git类开源代码托管平台进行日常版本控制的技能。
git book#
git pro book: https://git-scm.com/book/zh/v2
10 个迅速提升你 Git 水平的提示:https://www.oschina.net/translate/10-tips-git-next-level?cmp
准备软件#
本文以window操作系统为例
git for windows#
Git for Windows是用于windows平台下的仓库(另有github for windows)
官网:https://git-for-windows.github.io/
如果官网下载慢,从github的加速镜像中下载:https://github.com/git-for-windows/git/releases/
TortoiseGit#
github图形化客户端,包含多国语言包。
官网:https://tortoisegit.org/download/
开源地址:https://github.com/TortoiseGit/TortoiseGit
安装步骤#
1、安装 git for windows (git-xxx-bit.exe)
2、安装TortoiseGit,安装完成之后打开TortoiseGit,它的操作和SVN小乌龟类似。
git clone的三种方式#
首先需要明确,github上支持三种方式进行项目的clone (https,ssh,subversion)
https:https://github.com/用户名/版本库.git
ssh: git@github.com:用户名/版本库t.git
subversion:https://github.com/用户名/版本库
git command-line#
tortoisegit可用的命令行:https://tortoisegit.org/docs/tortoisegit/tgit-automation.html
tortoisegit使用方法#
tortoisegit https保存用户名和密码#
tortoisegit - 设置 - 凭证 - 编辑全局.git/config ,添加
1 2 | [credential] helper = store |
用这种方式是把用户名和密码,以明文的方式保存在 C:\Users\你当前用户名 ,例:C:\Users\zhaoq 。
ssh无需输入密码提交#
1、在github的项目页面,设置项目的拉取方式为 SSH
2、在本地磁盘目录,点击 右键,选择 设置,进入设置界面
3、设置完成后,第一次提交会询问是否信任,选择信任,之后往这个库提交就不需要输入用户名和密码了。
Clone到本地#
1、打开项目在github的地址,点击 Clone or Download ,选择ssh或https,点击 copy
2、回到本地磁盘,点击鼠标右键 选择 Git Clone(git克隆) ,粘贴剪切板中的地址,点击 确定
3、等待Clone结束之后,可以选择 查看日志/关闭
提交代码#
1、本地有修改,在目录中点击 鼠标右键 选择 Git提交->mater/其它分支
2、 提交完成之后,记得要点 推送 按钮,这样git仓库中的内容才得到同步
更新代码#
建议使用 Git拉取 和 Git 同步
当远端有新的tag (version),或其它重大修改之后,请先拉取再提交和推送
其它技巧#
其它操作比如,查看日志,应用补丁之类的,和svn小乌龟相似。
可能遇到的问题#
推送失败#
如果你在推送时遇到失败提示,请仔细查看错误信息,在git的错误信息中都会告诉你要怎么做。
Authentication Failed(验证失败)#
如果遇到下方信息,验证失败,有两种解决办法
方法一:
1、在本地机器上创建新的putty密钥,并把密钥添加到github的后台。
方法二:
1、检查项目的拉取方式是否是ssh
2、重新克隆此仓库,git clone时选择 加载putty密钥
3、在克隆过程中会弹出框,问你是否要将此计算机添加到你的信任设备列表,选择 是。
4、再次尝试推送,推送框勾选 “自动加载Putty密钥”
提交之后点推送,远端才更新?#
这个要从git的原理说起,git是基于分布式管理的
git clone 太慢怎么办?#
http://www.aneasystone.com/archives/2015/08/git-clone-faster.html
方法1. 推荐proxychains代理,或者挂米国VPS
方法2. 把https改成http
方法3. 在release中选择download 而非clone完整仓库,缺点:没有.git本地仓库,不能commit,push
方法4. git clone --depth=1 ,这样只clone当前最新的commit版本,缺点:没有.git本地仓库,不能commit,push
方法5. 在国内同类代码托管网站查找是否有同样的源码,从国内镜像下载。
参考资料:clone 一个 github 上庞大的代码库,每次 clone 到一半就中断
如何断点继传#
使用tortoiseGIT在拉取目录点击鼠标右键 - 同步 - 拉取。就可以继续上次的拉取工作
参考资料#
github结合TortoiseGit使用sshkey,无需输入账号和密码
开源中国的osc.git,几乎一样:Windows 下使用git 将代码托管到开源中国
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
2014-01-22 Blend Tree Type
2014-01-22 Unity 物理引擎动力学关节
2014-01-22 Daikon Forge GUI 制作图集和字体集
2014-01-22 Daikon Forge GUI 制作UI面板