一、前言

以 Coding iOS 客户端 为例讲解如何在github下载开源项目到本地

github地址:https://github.com/Coding/Coding-iOS

二、分析

根据项目的Git仓库是否引用其他版本库中的文件Git仓库,就是是否用到git submodule子模组,分为两种方式下载开源项目到本地。

git submodule:项目的版本库在某些情况下需要引用其他版本库中的文件,例如有一套公用的代码库,可以被多个项目调用,这个公用代码库能直接放在某个项目的代码中,而是要独立为一个代码库。好处是不用分别把公用的代码库拷贝到各自的项目中会造成冗余,丢弃了公共代码库的维护历史。

所以,用到git submodule的项目Git仓库必需要把公用代码库也一起下载到本地,否则会找不到指定的文件和目录而报错。

download项目的Git仓库不会连同公用代码库一起下载,clone项目的Git仓库会连同公用代码库一起下载。

1.download项目的Git仓库

对于可以直接以zip压缩包形式download到本地

2.clone项目的Git仓库

用到了git submodule,必需要把 Git仓库 clone 到本地。当然如果项目没有用到git submodule,也可以通过clone下载到本地

由于Coding iOS 客户端用到git submodule,必需要把 Git仓库 clone 到本地,否则直接以zip压缩包形式download到本地,运行(在运行bootstrap脚本下载相应依赖后)会报错找不到指定的文件和目录:error: No such file or directory。

三、clone项目过程

在本地运行终端,切换路径为项目保存路径

在 Coding官方客户端 拷贝Coding的git仓库:https://github.com/Coding/Coding-iOS.git

然后clone到本地

完成clone

四、下载依赖过程

主要是下载第三方框架。

双击运行根目录下的bootstrap脚本

下载相应的依赖

下载依赖后目录情况

至此,项目源码完整下载下来了。

如何在github下载开源项目到本地(Coding iOS 客户端为例)的更多相关文章

  1. 开源项目在真机调试(Coding iOS 客户端为例)

    一.前言 iOS 13学习系列:如何在github下载开源项目到本地(Coding iOS 客户端为例)已经把 Coding iOS 客户端源码下载到本地. 但项目进行真机调试遇到很多问题. 二.问题 ...

  2. 参与github上开源项目的大致流程和注意事项

    Foreword github是一个很火的代码托管服务网站,可能好多人都想参与一两个项目玩一玩学习一下,但由于是纯英文的网站,可能又会止步于想法上没有动手实践.接下来我就介绍一下参与github上开源 ...

  3. github优秀开源项目大全-iOS

    github优秀开源项目大全-iOS APR 25TH, 2014 前言 本文旨在搜集github上优秀的开源项目 本文搜集的项目都是用于iOS开发 本文会持续更新… 完整客户端 ioctocat g ...

  4. git下载自己项目到本地

    git下载自己项目到本地 假如外出工作,需要在另一台电脑上面pull自己的某个git远程项目到本地 $ git init $ git pull https://github.com/TTyb/54qj ...

  5. Github安卓开源项目编译运行

    转:http://blog.csdn.net/laihuan99/article/details/9054985 很多新手朋友朋友在Github搜索开源项目时,有时候不明白怎么导入eclipse.的确 ...

  6. [IDEA_4] IDEA 从 GitHub 上 pull 项目到本地

    0. 说明 通过参考的链接我们已经知道了怎么安装配置 Git  .GitHub ,如何使用 IDEA 将本地项目上传到 GitHub. 现在是学习怎么通过 IDEA 将项目从 GitHub pull ...

  7. GitHub上传项目,使用desktop(客户端)教程

    GitHub上传项目,使用desktop(客户端)教程  搜索“GitHub上传项目”,能得到很多相关的文章教程,里面讲的都特别麻烦,要弄什么ssh之类的,可算是吓坏了我,使我非常的怀疑为什么GitH ...

  8. 在GitHub上创建上传下载开源项目代码

    1.注册GitHub帐号,创建GitHub项目代码仓库 1.1.注册GitHub帐号 在使GitHub之前,需要先登录其官网注册一个免费使用的账号.登录 https://github.com/join ...

  9. GitHub Android 开源项目汇总 (转)

    转自:http://blog.csdn.net/ithomer/article/details/8882236 GitHub 上的开源项目不胜枚举,越来越多的开源项目正在迁移到GitHub平台上.基于 ...

随机推荐

  1. C#和C实现通过CRC-16 (Modbus)获取CRC值并校验数据(代码)

    文章首发于浩瀚先森博客 CRC的全称为Cyclic Redundancy Check,中文名称为循环冗余校验.它是一类重要的线性分组码,编码和解码方法简单,检错和纠错能力强,在通信领域广泛地用于实现差 ...

  2. Python2.7.6标准库内建函数

        Built-in Functions     abs() divmod() input() open() staticmethod() all() enumerate() int() ord( ...

  3. HTML+CSS知识点总结

    转自:http://blog.csdn.net/qiushi_1990/article/details/40260447?utm_source=tuicool&utm_medium=refer ...

  4. signalr遇到的问题汇总

    1.signalr不会触发 hub类的连接事件和断开连接事件 解决:当时因为我引用的是最新的类库 .当时想到的是类库版本问题.就将他换成官方demo一模一样 发现还是不行..然后用官方demo的客户端 ...

  5. Jsoup提取文本时保留标签

    使用Jsoup来对html进行处理比较方便,你可能会用它来提取文本或清理html标签.如果你想提取文本时保留标签,可以使用Jsoup.clean方法,参数为html及标签白名单: Jsoup.clea ...

  6. java单例的几种实现方法

    java单例的几种实现方法: 方式1: public class Something { private Something() {} private static class LazyHolder ...

  7. Traditional Language Model

    Traditional Language Model通常用于回答下述问题: How likely is a string of English words good English ? \(p_{LM ...

  8. 常见linux命令释义(第八天)—— Bash Shell 的操作环境

    换了新公司,公司的领导很不错.自己感受比较多的地方是,自己的工作效率明显比以前高了.以前会对频繁变动的需求十分不耐烦,现在接到需求后会仔细的思考,进行整体构建.即使以后需求有变动,也能够比较轻易的在原 ...

  9. wcf第4步之原生调用简单封装

    public interface IDemoServiceChannel : IDemoService, System.ServiceModel.IClientChannel { } public p ...

  10. avalonjs

    var vm = avalon.define({ $id: "login", username: "", password: "", mes ...