git - 如何在我的服务器上设置 git,并从自身推送?
问题描述
我的老板让我安装 git 并在公司服务器上创建一个 repo,以将其全部保存在内部而不是第三方公司。但是该死的,这个要求对我来说太过分了……
问题是:我对服务器的访问权限有限,已经有一个项目正在运行,需要从其中的另一个文件夹推送。这意味着我只能访问public_html
(但该文件夹的路径是已知的),还有其他 2 个文件夹。一个是当前的 LIVE 版本,另一个是开发版本。
我可以创建更多文件夹并编辑其中的所有内容,但不能cd
到上层目录或任何其他文件夹,除了这两个,不是我创建的)。
由于我们有一个网络编辑器,我们编辑服务器中的所有内容,我们所做的任何保存都已经进入它。因此,我们不使用本地文件或类似的东西。
我只使用 GitHub 来存储提交和版本,所以当谈到 git 本身时我有点迷茫。我读过的所有教程和解释都说要使用文件夹和//tmp
或/var
创建和删除用户,这不在我的范围内。
我需要做的是:知道所有这些限制,我如何设置环境以从服务器的文件夹 A 提交和推送到文件夹 B(假设 B 是主服务器,A 是克隆)?
解决方案
出于测试目的,我已经多次这样做了。
转到文件夹 B 并制作:
git init --bare
这将为 git 目的创建多个文件。现在这是您的主要存储库。
转到文件夹 A 并制作:
git init
git remote add origin PATH/TO/FOLDER/B
就这样。
现在您可以从文件夹 A执行: git add .
, git commit -m 'messsage'
, 。git push/pull origin master
您的文件夹 B 将收到所有推送。您可以git log
在文件夹 B中测试它
推荐阅读
- sql - 让结果显示在同一行?
- c++ - 使用 p4api 获取 Perforce 命令运行的输出
- php - 如何在不关心php中单词之间的空格的情况下替换文本
- java - Gradle 项目同步失败 - Android Studio 3.5.1
- angular - 如何避免 Angular ngClass 中的重复?
- spring-boot - 如何在与 JBoss EAP 中的 EJB 通信的 Spring Boot 应用程序上配置 Oracle XA 数据源
- c# - C# 使用 XSD 验证 XML 而不加载未经验证的 XSD?
- c# - 如何让 Tensorflow PoseNet 与 Xamarin forms/Xam.Android 一起使用
- assembly - MASM 5.1a:警告 A4057 操作数和链接 V2.0 的大小非法:对象模块无效
- android - 拒绝对 OkHttp 中先前失败的类重新初始化