在GitHub上上传非代码文件是否可以?

8
我打算将我主要使用PHP编写的项目上传到GitHub,但我不确定是否应该上传所有“非代码”文件,例如用于网站设计的CSS、.htaccess、HTML、图像等,甚至不是PHP的代码文件(例如JavaScript)。

如果我指定我的存储库包含一个PHP项目,那么我应该上传所有内容还是仅上传PHP文件?


你可以上传任何你想要的东西(在大小限制内)。我不确定你在哪里“指定我的仓库将包含一个PHP项目”,但这与任何事情都没有关系。 - Greg Hewgill
我认为当GitHub要求您的存储库的主要语言时,这是一种限制,而不仅仅是为分类目的(就像@hd1所说)。 - federico-t
在开发网站时,我不会说CSS、HTML和.htaccess不是代码。 - mgarciaisaia
4个回答

11

上传所有内容。

我不知道你是从哪里得到这个想法的,认为版本控制只适用于代码。

上传所有东西。除了密码。

澄清:对于每种语言和工具集,您需要开发一份不属于版本库的文件列表。例如,您想要将*.o文件排除在C项目之外,将.*.swp 文件排除在任何项目之外(它们是vim临时文件)。但是,如果您意外添加了一个文件,删除它总比添加您忘记添加的文件更容易。(删除包含密码等敏感信息的文件是另一回事,因为您还需要从历史记录中清除该文件。)


2
除了敏感信息之外,一般情况下可以进行翻译。如果是私有仓库,那就尽情享受吧(但密码方面还是不要太相信Github)。 - beatgammit
1
@DietrichEpp:那么许可证可能存在问题的内容怎么办?例如:我发现了一个想在我的私人应用程序中使用的图标。如果我将其上传到Github,是否会遇到版权问题?如果您只是开发私人项目,这可能是一个理论性的问题,但一旦它被上传到Github(并且您有一个免费帐户),它就会变成公开的... - eckes
1
@eckes:如果你违反版权法,无论你是否使用GitHub都是一个问题。 - Dietrich Epp

7
你应该上传应用程序所需的所有内容。
我建议不要上传生成的文件或临时文件。例如,如果你有一个c++项目,除非它们是某种特定版本的最终下载文件,否则不要上传最终的二进制文件。
因此,如果在设置期间生成配置文件,请勿上传它。其他所有内容都可以上传。

我曾经不小心添加了构建文件。当我用完空间并不得不重写那些被省略的git历史记录时,我感到很不开心。 - beatgammit
我对Github不是很熟悉,但应该可以将它们从存储库中删除并将它们设置在一种阻止/忽略列表上。 - rekire
好的,“git remove”会保留文件的修订历史记录。要完全摆脱它们,您必须进行历史重写,这将对拥有您存储库副本的任何人造成严重影响。 - beatgammit

3
语言规范似乎是为了分类目的。超越教科书练习的大多数项目涉及不止一种语言。按照Dietrich的说法,上传所有内容,除了密码。

3
上传任何你想上传到Github的内容,甚至与编程无关。如果您以前从未使用过Github,请阅读它们的帮助部分。 http://help.github.com 还有一个与最佳实践相关的好问题,在我看来,这个问题概述了如何在一般情况下使用git存储库。 Workflow best practice with git and github? 无论您上传什么,请知道除非您为私有存储库付费,否则您上传的所有内容都将是公开可见的,因此不要上传任何您不希望他人看到或拥有的内容。此外,如果您有应该不上传的项目文件,例如IDE或配置特定文件等,您可以将文件排除在.gitignore之外。关于.gitignore是什么以及如何使用它的信息可以在git man页面上找到: http://schacon.github.com/git/gitignore.htmlhttps://help.github.com/articles/ignoring-files 一旦您熟练掌握.gitignore,这里是各种项目格式的优秀模板。 https://github.com/github/gitignore

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接