{"id":18992639,"url":"https://github.com/yifengyou/learn-git","last_synced_at":"2025-04-22T11:43:53.528Z","repository":{"id":108570880,"uuid":"96164516","full_name":"yifengyou/learn-git","owner":"yifengyou","description":"Git学习笔记","archived":false,"fork":false,"pushed_at":"2021-07-20T10:58:17.000Z","size":27334,"stargazers_count":7,"open_issues_count":0,"forks_count":5,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-04-17T00:18:25.838Z","etag":null,"topics":["git","github"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/yifengyou.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-07-04T01:49:43.000Z","updated_at":"2023-01-23T15:51:14.000Z","dependencies_parsed_at":"2023-03-13T14:24:53.028Z","dependency_job_id":null,"html_url":"https://github.com/yifengyou/learn-git","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yifengyou%2Flearn-git","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yifengyou%2Flearn-git/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yifengyou%2Flearn-git/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yifengyou%2Flearn-git/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yifengyou","download_url":"https://codeload.github.com/yifengyou/learn-git/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250237277,"owners_count":21397394,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["git","github"],"created_at":"2024-11-08T17:18:30.979Z","updated_at":"2025-04-22T11:43:53.515Z","avatar_url":"https://github.com/yifengyou.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- MDTOC maxdepth:6 firsth1:1 numbering:0 flatten:0 bullets:1 updateOnSave:1 --\u003e\n\n- [Git学习笔记](#git学习笔记)   \n   - [仓库介绍](#仓库介绍)   \n   - [相关站点](#相关站点)   \n   - [常用技能](#常用技能)   \n      - [国内git访问异常](#国内git访问异常)   \n      - [自动保存密码](#自动保存密码)   \n      - [ssh公私钥免密](#ssh公私钥免密)   \n      - [ssh默认编辑器配置](#ssh默认编辑器配置)   \n   - [Git 简介](#git-简介)   \n   - [GitHub 托管平台](#github-托管平台)   \n   - [目录](#目录)   \n   - [参考](#参考)   \n   - [思维导图](#思维导图)   \n   - [总结](#总结)   \n\n\u003c!-- /MDTOC --\u003e\n# Git学习笔记\n\n![20200211_113940_82](image/20200211_113940_82.png)\n\n## 仓库介绍\n\n1. Git 基本使用及技巧总结\n2. Git 思维导图\n\n```\nSomething I hope you know before go into the coding~\nFirst, please watch or star this repo, I'll be more happy if you follow me.\nBug report, questions and discussion are welcome, you can post an issue or pull a request.\n```\n\n## 相关站点\n\n* Git Pro教程站点 : \u003chttps://git-scm.com/book/en/v2\u003e\n* GitBook : \u003chttps://yifengyou.gitbooks.io/learn-git/content/\u003e\n* GitHub : \u003chttps://github.com/yifengyou/learn-git/\u003e\n* GitPage : \u003chttps://yifengyou.github.io/learn-git/\u003e\n\n## 常用技能\n\n### 国内git访问异常\n\n镜像加速，将github.com替换为hub.fastgit.org\n\n```\nhttps://hub.fastgit.org/USERNAME/REPO\n```\n\nGitHub站点图片无法打开问题，请修改hosts文件，添加如下内容即可\n\n```\n# GitHub Start\n192.30.253.112    Build software better, together\n192.30.253.119    gist.github.com\n151.101.184.133    assets-cdn.github.com\n151.101.184.133    raw.githubusercontent.com\n151.101.184.133    gist.githubusercontent.com\n151.101.184.133    cloud.githubusercontent.com\n151.101.184.133    camo.githubusercontent.com\n151.101.184.133    avatars0.githubusercontent.com\n151.101.184.133    avatars1.githubusercontent.com\n151.101.184.133    avatars2.githubusercontent.com\n151.101.184.133    avatars3.githubusercontent.com\n151.101.184.133    avatars4.githubusercontent.com\n151.101.184.133    avatars5.githubusercontent.com\n151.101.184.133    avatars6.githubusercontent.com\n151.101.184.133    avatars7.githubusercontent.com\n151.101.184.133    avatars8.githubusercontent.com\n# GitHub End\n```\n\n\n\n### 自动保存密码\n\n对应用户家目录下创建.git-credentials\n\nvim  ~/.git-credentials\n\n```\nhttps://USERNAME:PASSWD@github.com\n```\n\n其中@用 %40 表示\n\n```\ngit config --global credential.helper 'store'\n```\n\n\n### ssh公私钥免密\n\n\n```\nssh-keygen -t rsa  -C \"842056007@qq.com\"\n```\n\n公钥在 ~/.ssh/rsa.pub\n私钥位于 ~/.ssh/rsa\n\n\n### ssh默认编辑器配置\n\n```\ngit config --global core.editor vim\n```\n\n\n\n## Git 简介\n\n**Git**(读音为**/gɪt/**)是一个开源的分布式版本控制系统，可以有效.高速的处理从很小到非常大的项目版本管理。\n\n**Git 诞生于2005年，Linus Torvalds 为了帮助管理 Linux 内核开发花了两周时间自己用C写的一个分布式版本控制系统**\n\n![1533473327999.png](image/1533473327999.png)\n\nTorvalds 开始着手开发 **Git** 是为了作为一种过渡方案来替代 **BitKeeper**，后者之前一直是 Linux 内核开发人员在全球使用的主要源代码工具。开放源码社区中的有些人觉得BitKeeper 的许可证并不适合开放源码社区的工作，因此 Torvalds 决定着手研究许可证更为灵活的版本控制系统。尽管最初 Git 的开发是为了辅助 Linux 内核开发的过程，但是我们已经发现在很多其他自由软件项目中也使用了 Git。例如 很多 Freedesktop 的项目迁移到了 Git 上。\n\n## GitHub 托管平台\n\nGitHub是一个面向开源及私有软件项目的托管平台，因为只支持 Git 作为唯一的版本库格式进行托管，故名GitHub。\n\n**GitHub于2008年4月10日正式上线**，除了 Git 代码仓库托管及基本的 Web 管理界面以外，还提供了**订阅、讨论组、文本渲染、在线文件编辑器、协作图谱（报表）、代码片段分享（Gist）**等功能。目前，其注册用户已经超过350万，托管版本数量也是非常之多，其中不乏知名开源项目 Ruby on Rails、jQuery、python 等。\n\n\n![1533473915575.png](image/1533473915575.png)\n\n* **章鱼猫**-GitHub吉祥物-\u003chttps://octodex.github.com/\u003e\n\n**2018年6月4日晚，微软宣布，通过75亿美元的股票交易收购代码托管平台 GitHub。**\n\n## 目录\n\n**图解Git操作**\n\n* [图解Git操作](docs/图解Git操作.md)\n    * [工作流程及原理](docs/图解Git操作/工作流程及原理.md)\n    * [Git数据模型](docs/图解Git操作/Git数据模型.md)\n    * [分离头指针](docs/图解Git操作/分离头指针.md)\n\n\n**常用Git实例**\n\n* [常用Git实例(Git Tips)](docs/常用Git实例.md)\n    * [回到远程仓库的状态](docs/常用Git实例/回到远程仓库的状态.md)\n    * [合并多个commit](docs/常用Git实例/合并多个commit.md)\n\n**Git详解**\n\n* [起步](docs/起步.md)\n    * [关于版本控制](docs/起步/关于版本控制.md)\n    * [Git简史](docs/起步/Git简史.md)\n    * [Git基础](docs/起步/Git基础.md)\n    * [命令行](docs/起步/命令行.md)\n    * [安装Git](docs/起步/安装Git.md)\n    * [初次运行Git前的配置](docs/起步/初次运行Git前的配置.md)\n    * [获取帮助](docs/起步/获取帮助.md)\n    * [总结](docs/起步/总结.md)\n* [Git基础](docs/Git基础.md)\n    * [获取Git仓库](docs/Git基础/获取Git仓库.md)\n    * [记录每次更新到仓库](docs/Git基础/记录每次更新到仓库.md)\n    * [查看提交历史](docs/Git基础/查看提交历史.md)\n    * [撤销操作](docs/Git基础/撤销操作.md)\n    * [远程仓库的使用](docs/Git基础/远程仓库的使用.md)\n    * [查看提交历史](docs/Git基础/查看提交历史.md)\n    * [撤销操作](docs/Git基础/撤销操作.md)\n    * [远程仓库的使用](docs/Git基础/远程仓库的使用.md)\n    * [tag打标签](docs/Git基础/tag打标签.md)\n    * [Git别名](docs/Git基础/Git别名.md)\n* [Git分支](docs/Git分支.md)\n    * [分支简介](docs/Git分支/分支简介.md)\n    * [分支的新建与合并](docs/Git分支/分支的新建与合并.md)\n    * [分支管理](docs/Git分支/分支管理.md)\n    * [分支开发工作流](docs/Git分支/分支开发工作流.md)\n    * [远程分支](docs/Git分支/远程分支.md)\n    * [变基](docs/Git分支/变基.md)\n    * [总结](docs/Git分支/总结.md)\n* [服务器上的Git](docs/服务器上的Git.md)\n    * [协议](docs/服务器上的Git/协议.md)\n    * [在服务器上搭建Git](docs/服务器上的Git/在服务器上搭建Git.md)\n    * [生成SSH公钥](docs/服务器上的Git/生成SSH公钥.md)\n    * [配置服务器](docs/服务器上的Git/配置服务器.md)\n    * [Git守护进程](docs/服务器上的Git/Git守护进程.md)\n    * [Smart HTTP](docs/服务器上的Git/SmartHTTP.md)\n    * [GitWeb](docs/服务器上的Git/GitWeb.md)\n    * [GitLab](docs/服务器上的Git/GitLab.md)\n    * [第三方托管的选择](docs/服务器上的Git/第三方托管的选择.md)\n    * [总结](docs/服务器上的Git/总结.md)\n* [分布式Git](docs/分布式Git.md)\n    * [分布式工作流程](docs/分布式Git/分布式工作流程.md)\n    * [向一个项目贡献](docs/分布式Git/向一个项目贡献.md)\n    * [维护项目](docs/分布式Git/维护项目.md)\n    * [总结](docs/分布式Git/总结.md)\n* [GitHub](docs/GitHub.md)\n    * [账户的创建和配置](docs/GitHub/账户的创建和配置.md)\n    * [对项目做出贡献](docs/GitHub/对项目做出贡献.md)\n    * [维护项目](docs/GitHub/维护项目.md)\n    * [管理组织](docs/GitHub/管理组织.md)\n    * [脚本GitHub](docs/GitHub/脚本GitHub.md)\n    * [总结](docs/GitHub/总结.md)\n* [Git工具](docs/Git工具.md)\n    * [选择修订版本](docs/Git工具/选择修订版本.md)\n    * [交互式暂存](docs/Git工具/交互式暂存.md)\n    * [储藏与清理](docs/Git工具/储藏与清理.md)\n    * [签署工作](docs/Git工具/签署工作.md)\n    * [搜索](docs/Git工具/搜索.md)\n    * [重写历史](docs/Git工具/重写历史.md)\n    * [重置揭密](docs/Git工具/重置揭密.md)\n    * [高级合并](docs/Git工具/高级合并.md)\n    * [Rerere](docs/Git工具/Rerere.md)\n    * [使用Git调试](docs/Git工具/使用Git调试.md)\n    * [子模块](docs/Git工具/子模块.md)\n    * [打包](docs/Git工具/打包.md)\n    * [替换](docs/Git工具/替换.md)\n    * [凭证存储](docs/Git工具/凭证存储.md)\n    * [总结](docs/Git工具/总结.md)\n* [自定义Git](docs/自定义Git.md)\n    * [配置Git](docs/自定义Git/配置Git.md)\n    * [Git属性](docs/自定义Git/Git属性.md)\n    * [Git钩子](docs/自定义Git/Git钩子.md)\n    * [使用强制策略的一个例子](docs/自定义Git/使用强制策略的一个例子.md)\n    * [总结](docs/自定义Git/总结.md)\n* [Git与其他系统](docs/Git与其他系统.md)\n    * [作为客户端的Git](docs/Git与其他系统/作为客户端的Git.md)\n    * [迁移到Git](docs/Git与其他系统/迁移到Git.md)\n    * [总结](docs/Git与其他系统/总结.md)\n* [使用repo管理多个Git仓库](docs/使用repo管理多个Git仓库.md)\n* [Git内部原理](docs/Git内部原理.md)\n    * [底层命令和高层命令](docs/Git内部原理/底层命令和高层命令.md)\n    * [Git对象](docs/Git内部原理/Git对象.md)\n    * [Git引用](docs/Git内部原理/Git引用.md)\n    * [包文件](docs/Git内部原理/包文件.md)\n    * [引用规格](docs/Git内部原理/引用规格.md)\n    * [传输协议](docs/Git内部原理/传输协议.md)\n    * [维护与数据恢复](docs/Git内部原理/维护与数据恢复.md)\n    * [环境变量](docs/Git内部原理/环境变量.md)\n    * [总结](docs/Git内部原理/总结.md)\n* [其它环境中的Git](docs/其它环境中的Git.md)\n    * [图形界面](docs/其它环境中的Git/图形界面.md)\n    * [VScode中的Git](docs/其它环境中的Git/VScode中的Git.md)\n    * [Bash中的Git](docs/其它环境中的Git/Bash中的Git.md)\n    * [Powershell中的Git](docs/其它环境中的Git/Powershell中的Git.md)\n    * [总结](docs/其它环境中的Git/总结.md)\n* [将Git嵌入你的应用](docs/将Git嵌入你的应用.md)\n    * [命令行Git方式](docs/将Git嵌入你的应用/命令行Git方式.md)\n    * [Libgit2](docs/将Git嵌入你的应用/Libgit2.md)\n    * [JGit](docs/将Git嵌入你的应用/JGit.md)\n* [附录-Git命令](docs/附录-Git命令.md)\n    * [设置与配置](docs/附录-Git命令/设置与配置.md)\n    * [获取与创建项目](docs/附录-Git命令/获取与创建项目.md)\n    * [快照基础](docs/附录-Git命令/快照基础.md)\n    * [分支与合并](docs/附录-Git命令/分支与合并.md)\n    * [项目分享与更新](docs/附录-Git命令/项目分享与更新.md)\n    * [检查与比较](docs/附录-Git命令/检查与比较.md)\n    * [调试](docs/附录-Git命令/调试.md)\n    * [补丁](docs/附录-Git命令/补丁.md)\n    * [邮件](docs/附录-Git命令/邮件.md)\n    * [外部系统](docs/附录-Git命令/外部系统.md)\n    * [管理](docs/附录-Git命令/管理.md)\n    * [底层命令](docs/附录-Git命令/底层命令.md)\n\n## 参考\n\n* \u003chttps://github.com/jackfrued/git-tips\u003e\n\n## 思维导图\n\n![20200211_160222_55](image/20200211_160222_55.png)\n\n![20200211_160332_66](image/20200211_160332_66.png)\n\n![1534035321119.png](image/1534035321119.png)\n\n\n\n## 总结\n\n```\n1. 如何学习神器，没啥特殊方法，经常用，多接触\n2. 快速上手不可或缺思维导图\n3. 不懂源码别说精通，顶多熟练~\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyifengyou%2Flearn-git","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyifengyou%2Flearn-git","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyifengyou%2Flearn-git/lists"}