如何在github下载开源项目到本地(Coding iOS 客户端为例)
一、前言
以 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 客户端为例)的更多相关文章
- 开源项目在真机调试(Coding iOS 客户端为例)
一.前言 iOS 13学习系列:如何在github下载开源项目到本地(Coding iOS 客户端为例)已经把 Coding iOS 客户端源码下载到本地. 但项目进行真机调试遇到很多问题. 二.问题 ...
- 参与github上开源项目的大致流程和注意事项
Foreword github是一个很火的代码托管服务网站,可能好多人都想参与一两个项目玩一玩学习一下,但由于是纯英文的网站,可能又会止步于想法上没有动手实践.接下来我就介绍一下参与github上开源 ...
- github优秀开源项目大全-iOS
github优秀开源项目大全-iOS APR 25TH, 2014 前言 本文旨在搜集github上优秀的开源项目 本文搜集的项目都是用于iOS开发 本文会持续更新… 完整客户端 ioctocat g ...
- git下载自己项目到本地
git下载自己项目到本地 假如外出工作,需要在另一台电脑上面pull自己的某个git远程项目到本地 $ git init $ git pull https://github.com/TTyb/54qj ...
- Github安卓开源项目编译运行
转:http://blog.csdn.net/laihuan99/article/details/9054985 很多新手朋友朋友在Github搜索开源项目时,有时候不明白怎么导入eclipse.的确 ...
- [IDEA_4] IDEA 从 GitHub 上 pull 项目到本地
0. 说明 通过参考的链接我们已经知道了怎么安装配置 Git .GitHub ,如何使用 IDEA 将本地项目上传到 GitHub. 现在是学习怎么通过 IDEA 将项目从 GitHub pull ...
- GitHub上传项目,使用desktop(客户端)教程
GitHub上传项目,使用desktop(客户端)教程 搜索“GitHub上传项目”,能得到很多相关的文章教程,里面讲的都特别麻烦,要弄什么ssh之类的,可算是吓坏了我,使我非常的怀疑为什么GitH ...
- 在GitHub上创建上传下载开源项目代码
1.注册GitHub帐号,创建GitHub项目代码仓库 1.1.注册GitHub帐号 在使GitHub之前,需要先登录其官网注册一个免费使用的账号.登录 https://github.com/join ...
- GitHub Android 开源项目汇总 (转)
转自:http://blog.csdn.net/ithomer/article/details/8882236 GitHub 上的开源项目不胜枚举,越来越多的开源项目正在迁移到GitHub平台上.基于 ...
随机推荐
- 我常用的VS技巧
声明:开发工具使用的是VS2013 1.开发 包括编辑,代码补全等 1.1快速选择一行 第一种方式:鼠标停留在要选择的行上,三击. 第二种方式:鼠标停留在要选择的行上,按home键将鼠标停留在行首,按 ...
- linux基础知识与技能2
3.编辑器vi的使用(vi和vim的联系)什么是编辑器?编辑器就是一款软件,它的主要作用就是用来编辑.譬如编写文件,编写代码.Windows中的常用编辑器,如自带的notepad.比较好用的notep ...
- localStorage与sessionStorage 的区别
通过一枚页面计数器来区别localStorage与sessionStorage. 通过一个计数变量pageconut,每刷新页面,增加的是localStorage的数量,而sessionStorage ...
- Python笔记(2)函数
python中一切皆对象,函数也看做对象.函数被函数名所引用,但是同样的他也可以被其他标识符所引用,可以作为参数传递. def f(): return "hi" 可见a引用了函数返 ...
- c#线程间操作UI-Invoke和BeginInvoke
利用Invoke和或BeginInvoke实现线程间操作UI的简单例子. /* 窗体包含一个button和一个richtextbox控件 * 注:必须在子线程中执行Invoke和或BeginInvok ...
- 解决:/bin/sh: 1: /home/**/custom_app.sh: Permission denied错误
出现如下错误,一般是执行权限不够. /bin/sh: : /home/custom_app.sh: Permission denied 解决方法是:cd 到此文件目录,对提示的文件赋予可执行权限或读写 ...
- Leetcode 255. Verify Preorder Sequence in Binary Search Tree
验证一个list是不是一个BST的preorder traversal sequence. Given an array of numbers, verify whether it is the co ...
- hackerrank Similar Pair
传送门 Problem Statement You are given a tree where each node is labeled from 1 to n. How many similar ...
- [bigdata] 启动CM出现 “JDBC Driver class not found: com.mysql.jdbc.Driver” 以及“Error creating bean with name 'serverLogFetcherImpl'”问题的解决方法
问题:“JDBC Driver class not found: com.mysql.jdbc.Driver” 通过以下命令启动cm [root@hadoop1 ~]# /etc/init.d/cl ...
- AngularJS 的嵌套路由 UI-Router
AngularJS 的嵌套路由 UI-Router 本篇文章翻译自:https://scotch.io/tutorials/angular-routing-using-ui-router 演示网站请查 ...