从GitHub repo下载单个文件有哪些技巧?
我不想要显示原始文件的URL;对于二进制文件,什么都没有。
http://support.github.com/discussions/feature-requests/41-download-single-file
是否有可能将GitHub用作“下载服务器”?
如果我们决定切换到GoogleCode,是否提供了上述功能?
或者开源项目是否有免费托管和VCS?
从GitHub repo下载单个文件有哪些技巧?
我不想要显示原始文件的URL;对于二进制文件,什么都没有。
http://support.github.com/discussions/feature-requests/41-download-single-file
是否有可能将GitHub用作“下载服务器”?
如果我们决定切换到GoogleCode,是否提供了上述功能?
或者开源项目是否有免费托管和VCS?
当前回答
您应该只使用文件的原始URL进行操作。
例如,下载AFNetworking的README:
curl https://raw.githubusercontent.com/AFNetworking/AFNetworking/master/README.md > ADREADME.md
由于它是公共回购,因此您不需要任何凭据。请注意url的类型:raw.githubusercontent.com/path/to/file
其他回答
这就是我刚才所做的。。。
在单独的选项卡中打开原始文件。将整个内容复制到记事本中的新文件中。将文件保存为原来的扩展名
使用我刚才下载的php文件进行测试(在回答时)
您链接到的页面回答了第一个问题。GitHub还提供了一个下载工具,用于发布等内容。谷歌代码根本没有Git。GitHub、Google Code和SourceForge是免费托管。SourceForge可能仍然会做CVS。
或者试试这个
const https = require('https');
const fs = require('fs');
const DOMAIN = 'raw.githubusercontent.com';
function writeFile(data, fileName) {
fs.appendFile(fileName, data.toString(), err => {
if (err) {
console.log('error in writing file', err);
}
});
}
function EOF(data) {
console.log('EOF');
}
function getFileName(pathToFile) {
var result = pathToFile.split('/');
var splitLength = result.length;
return result[splitLength - 1];
}
function getFile(branchName, username, repoName, ...pathToFile) {
pathToFile.forEach(item => {
const path = `/${username}/${repoName}/${branchName}/${item}`;
const URL = `${DOMAIN}${path}`;
const options = {
hostname: DOMAIN,
path: path
};
var fileName = getFileName(item);
https
.get(options, function(res) {
console.log(res.statusCode);
/* if file not found */
if (res.statusCode === 404) {
console.log('FILE NOT FOUND');
} else {
/* if file found */
res.on('data', data => writeFile(data, fileName));
res.on('end', data => EOF(data));
}
})
.on('error', function(res) {
console.log('error in reading URL');
});
});
}
getFile('master', 'bansalAyush', 'InstagramClone', '.babelrc', 'README.md');
转到脚本并单击“原始”
然后复制链接并使用aria2c链接下载。
例如:aria2chttps://raw.githubusercontent.com/kodamail/gscript/master/color.gsf
窍门:我想下载的文件是,https://github.com/kodamail/gscript*/blob*/master/color.gsf
只需将链接修改为https://raw.githubusercontent.com/kodamail/gscript/master/color.gsf
删除斜体文本并添加相同格式的粗体文本,这将为您提供正确的链接。
可以与aria2c、wget或curl一起使用,我在这里使用了aria2c。
我最近发现了一个名为gitzip的服务,它也是开源的:
站点-http://kinolien.github.io/gitzip/
回购-https://github.com/KinoLien/gitzip
访问上述站点,输入repo或目录URL,您可以下载单个文件或整个目录作为zip文件。