将git提交到远程存储库,而无需克隆任何本地存储库

时间:2019-01-11 15:01:56

标签: git github github-api

我的问题很简单,但是我在StackOverflow或其他地方都找不到任何答案(除了question之外,没有得到回答):

有人知道一种直接向远程存储库(在我的情况下为Github)提交GIT更改的方法,而无需在本地克隆存储库,而必须先提交到本地存储库然后再推送到远程存储库?

提交将通过Python(仅使用GIT命令行)以编程方式执行。 老实说,我看不到有一个单独的服务器(用于本地存储库)并在其上保留巨大的git存储库,只是最终将它们推到Github的好处。

2 个答案:

答案 0 :(得分:3)

您可以使用SELECT vID, fID, RESULT, Recorded, [First] AS [First], [Next] AS [Next] FROM (SELECT vID, fID, RESULT, Recorded, MeasureDSC FROM #temp) x PIVOT (MAX(RESULT) FOR MeasureDSC IN ([First], [Next])) p 克隆存储库以不检出任何文件。
-n会将每个文件的历史记录截断为最后一次提交

--depth 1

git clone -n git://path/to/repo.git --depth 1

仅检出提交所需更改的文件

cd repo

请小心,仅提交您正在处理的文件。如果您执行类似git checkout HEAD file.ext的操作,则将删除所有尚未签出的文件!

答案 1 :(得分:1)

您不能使用Git命令行工具创建提交(Python是否无关紧要)–这些工具需要本地存储库,而大多数工具都需要本地签出(工作树)。

您可以create commits using Github API,但这要困难得多,并且您需要一套完全不同的工具,例如或任何其他Python Github API包装器。