我有一个本地Git存储库。我想让它在远程的、启用ssh的服务器上可用。我怎么做呢?
当前回答
您需要在远程服务器上创建目录。然后使用“git init”命令将其设置为存储库。对于每个新项目(每个新文件夹)都应该这样做
假设你已经使用ssh键设置和使用了git,我写了一个小的Python脚本,当从一个工作目录执行时,它将设置一个远程目录,并将该目录初始化为一个git repo。当然,您必须编辑脚本(只有一次)来告诉它所有存储库的服务器和根路径。
点击这里查看- https://github.com/skbobade/ocgi
其他回答
通常你只需要使用init命令就可以建立一个git repo
git init
在您的情况下,已经有一个回购的远程可用。根据您如何访问远程repo (url内的用户名或处理验证的ssh密钥),只使用clone命令:
git clone git@[my.url.com]:[git-repo-name].git
还有其他方法可以克隆回购。如果您在计算机上设置了ssh密钥,在提取存储库时进行验证,则可以使用这种方法调用它。如果您希望在其中包含密码和用户名以登录到远程存储库,则该url还有其他组合。
对于在Windows上创建本地副本并希望在unix行系统上创建相应远程存储库的人来说,这里的文本文件在类unix系统上的开发人员进一步克隆时得到LF结尾,但在Windows上得到CRLF结尾。
如果你在设置行尾转换之前创建了Windows存储库,那么你就有问题了。Git的默认设置是不翻译,所以您的工作集使用CRLF,但您的存储库(即存储在. Git下的数据)也将文件保存为CRLF。
当您推到远程时,保存的文件将按原样复制,不会发生行尾转换。(行尾转换发生在文件提交到存储库时,而不是推送存储库时)。您最终会在类unix存储库中使用CRLF,这不是您想要的。
为了在远程存储库中获得LF,您必须首先通过重新规范化您的Windows存储库来确保LF在本地存储库中。这将对您的Windows工作集没有明显的影响,它仍然有CRLF结束,但是当您推到远程时,远程将正确地获得LF。
我不确定是否有一种简单的方法来告诉你在你的Windows存储库中有什么行尾-我猜你可以通过设置core来测试它。selflf =false,然后克隆(如果回购有LF结尾,克隆也会有LF结尾)。
您需要在远程服务器上创建目录。然后使用“git init”命令将其设置为存储库。对于每个新项目(每个新文件夹)都应该这样做
假设你已经使用ssh键设置和使用了git,我写了一个小的Python脚本,当从一个工作目录执行时,它将设置一个远程目录,并将该目录初始化为一个git repo。当然,您必须编辑脚本(只有一次)来告诉它所有存储库的服务器和根路径。
点击这里查看- https://github.com/skbobade/ocgi
在当前代码文件夹中。
git remote add origin http://yourdomain-of-git.com/project.git
git push --set-upstream origin master
然后通过
git remote --v
我认为你在远程端创建一个裸库,git init——bare,添加远程端作为本地存储库的推/拉跟踪器(git remote add origin URL),然后在本地输入git push origin master。现在任何其他存储库都可以从远程存储库中提取。
推荐文章
- 如何查看一个分支中的哪些提交不在另一个分支中?
- 如何取消在github上的拉请求?
- HEAD和master的区别
- GIT克隆在windows中跨本地文件系统回购
- RPC失败;卷度传输已关闭,剩余未完成的读取数据
- 我应该在.gitignore文件中添加Django迁移文件吗?
- 错误:您对以下文件的本地更改将被签出覆盖
- Git rebase—即使所有合并冲突都已解决,仍然会继续报错
- 了解Gemfile。锁文件
- 在Git中,我如何知道我的当前版本是什么?
- 跟踪所有远程git分支作为本地分支
- 自定义SSH端口上的Git
- git如何显示不存在于.gitignore中的未跟踪文件
- Git错误:遇到7个文件应该是指针,但不是
- GitHub克隆与OAuth访问令牌