如何将URL的代码推送到Git存储库?

时间:2016-01-13 22:50:05

标签: javascript git bitbucket atlassian-sourcetree

我是Git新手。

我有一个BitBucket帐户,我在Windows 7 PC上安装了Atlassian SourceTree。

我会要求我们的IRT团队在www.example.com/extrajs/myscript.js上提供新代码

我对在我自己的电脑上跟踪数据的任何副本不感兴趣 - 我只想要一个我可以点击的按钮,它将把当前位于www.example.com/extrajs/myscript.js的任何内容复制到我的库中。

是否可以直接从Web复制到Git存储库?如果是这样,怎么样? (SourceTree特定或BitBucket-web-UI特定的答案甚至更好!我希望尽可能避免使用命令行。)

谢谢!

1 个答案:

答案 0 :(得分:2)

在一般情况下 1 ,无法将文件单独推送到repo。它需要是树的一部分,树需要是提交的一部分,需要与存储库中的其他提交相关。这需要存储库的至少某些部分的本地副本,即使它只是在内存中。

如果您不想要持久性本地副本,则每次要推送更新时,该工具都需要从存储库中获取一些信息,因此它知道如何构建它。这可以做到,但它与大多数分布式版本控制系统的工作流程相差甚远。不幸的是,这意味着任何工具都不太可能提供开箱即用的功能。我没有从GitHub或BitBucket那里听说过这样的事情。

您可能需要编写自定义脚本来处理此问题。如果您担心忘记清理它(并意外地推送不一致/陈旧数据),我建议每次运行脚本时使用OS API来使用唯一的临时文件夹,例如Linux上的mktemp -d。您还应该了解git clone的{​​{1}}选项,它允许您仅克隆存储库的最新提交,允许您进行更改,而无需重新加载整个历史记录。

1 有些Git服务器实际上只是标准的Linux机器,您使用标准的SSH连接进行交互,可能具有广泛的权限。在这种情况下,可以使用SSH / SFTP将文件上传到服务器,并直接在服务器上提交。但是,这种配置变得罕见,我建议不要这样做。