Git/Github + TortoiseGit 使用教程
前言
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/
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 ,添加
[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在拉取目录点击鼠标右键 - 同步 - 拉取。就可以继续上次的拉取工作
参考资料
通过TortoiseGit上传项目到GitHub
github结合TortoiseGit使用sshkey,无需输入账号和密码
开源中国的osc.git,几乎一样:Windows 下使用git 将代码托管到开源中国
Git/Github + TortoiseGit 使用教程相关推荐
- git/github使用完整教程(2)分支
分支 首先,我们创建dev分支,然后切换到dev分支: $ git checkout -b dev Switched to a new branch 'dev' git checkout命令加上-b参 ...
- git/github使用完整教程(1)基础
安装git 在Linux上安装Git 首先输入git,看看系统有没有安装Git: $ git The program 'git' is currently not installed. You can ...
- 【Git】Windows Git和TortoiseGit安装教程(Git2.23.0、TortoiseGit2.8.0、语言包2.8.0)
介绍 这里是小编成长之路的历程,也是小编的学习之路.希望和各位大佬们一起成长! 以下为小编最喜欢的两句话: 要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡. 一个人为什么要努力? ...
- clone git 修改保存路径_Git和Github详细入门教程(别再跟我说你不会Git和Github)
前言:成功不是将来才有的,而是从决定去做的那一刻起,持续累积而成.你好,我是梦阳辰,快和我一起搞定Git和Github吧. 文章目录 01.Git概述 02.Git的本地仓库操作 Git的版本回退操作 ...
- 本地git和远程github连接完整教程
一.注册账户以及创建仓库 要想使用github第一步当然是注册github账号了.之后就可以创建仓库了(免费用户只能建公共仓库),Create a New Repository,填好名称后Create ...
- Git、TortoiseGit、GitHub、Gitee、GitLab 安装与入门使用
Git.TortoiseGit.GitHub.Gitee.GitLab 安装与入门使用 Git.TortoiseGit.GitHub.Gitee.GitLab 简介 Git TortoiseGit G ...
- TortoiseGit和Git密钥配置图文教程
文章有点长,可以点击标题跳转明细 Git密钥配置 TortoiseGit密钥配置 TortoiseGit和Git密钥配置图文教程 TortoiseGit和Git如何使用相同的密钥 TortoiseGi ...
- Git与TortoiseGit的下载、安装以及Git与Gitee和Github的配合使用
Git与TortoiseGit的下载.安装以及Git与Gitee和Github的配合使用 1.Git与TortoiseGit下载安装 Git百度百科:https://baike.baidu.com/i ...
- Git和GitHub详细使用教程
目录: 01.Git概述 02.Git的本地仓库操作 03.Git的版本回退操作 04.远程仓库 05.Git的分支操作 06.冲突的产生与解决 07.Git实用功能 08.忽略文件 09.Githu ...
- 初学者Git和GitHub简介(教程)
翻译&转载:https://product.hubspot.com/blog/git-and-github-tutorial-for-beginners 初学者Git和GitHub简介(教程) ...
最新文章
- linux大爱版本Vinux 盲人也能用的OS
- 从源码分析DEARGUI之画图和删图
- 域名后缀php做跳转首页,手机移动端网站和电脑PC端网站域名使用与跳转PHP代码...
- hbase java框架_Hadoop学习笔记—15.HBase框架学习(基础实践篇)
- 计算机二级基础知识 文库,计算机二级公共基础知识(全)
- 大学生信息安全_给大学生的信息
- Warning: Missing charsets in String to FontSet conversion
- Spring Boot文档阅读笔记-Creating Asynchronous Methods解析
- python怎么让画笔向下移动_Pandas 解决dataframe的一列进行向下顺移问题
- android 横向stepview,一款由Recyclerview打造的步骤控件,支持横向和纵向
- 科大讯飞成为北京 2022 年冬奥会和冬残奥会官方自动语音转换与翻译独家供应商
- Scrivener for Mac如何自定义快捷键
- 典型的php系统由什么组成,完整的计算机系统由什么组成
- llvm+clang 添加 LTO(Link Time Optimization) 支持
- Ubuntu操作系统
- blender 3d打印_使用Blender创建用于打印的3D模型:高级技巧
- excel表格数字显示不全_Excel表格中输入数字最后几位数变成0的解决方法
- Python 数据处理数据挖掘(五):线性回归
- echarts x轴 y轴设置
- 单片机c语言小波阈值降噪,一种基于改进阈值函数的小波阈值降噪算法
热门文章
- 梯度下降算法(GD)—收敛速率证明
- linux db2v9.7卸载,db2 卸载和安装
- glmark2移植到嵌入式Linux,嵌入式中移植基于Framebuffer的LittlevGL
- oracle中表为啥会死锁,Oracle数据表中的死锁情况解决方法
- 在C#中使用消息队列RabbitMQ
- Redis入门到精通-Redis集群搭建
- 纵观中日韩市场 PC视频会议高清时代来临
- 分布式搜索引擎Elasticsearch的简单使用
- [转] 在ASP.NET MVC3中使用EFCodeFirst 1.0
- 9、两个栈实现队列(Python)