Git 在没有直接服务器访问的情况下从生产服务器拉取
Git pull from production server without direct server access
我们已被授予对客户端远程存储库 (CodebaseHQ
) 的开发访问权限,但由于 .gitignore
中的条目,远程存储库中不存在一个目录。
我已经修改了 .gitignore
(删除了必要的条目)并将其推送到远程仓库,但是无论如何我现在可以将这个目录从实时服务器拉到仓库中吗?
我没有直接访问服务器的权限。我将本地仓库推送到 codebasehq
上的远程仓库,然后使用 deployhq
.
部署到生产服务器
编辑
由于有投票结束此问题,我将澄清我的问题。
实时服务器上存在一个目录,但 codebasehq
上的存储库中不存在该目录。我怎样才能将此目录从服务器获取到存储库中(它已从 .gitignore
中删除)?
不,你不能。推送更新的 .gitignore
意味着如果现在将代码从 repo 拉入实时服务器,那么如果您这样做,该目录将在那里可见 git status
。仅此而已。
您仍然需要访问该服务器,以便从那里提交目录并添加目录,并将更改推送回存储库,稍后可以从那里将它们拉到下游。
所以你应该要求客户
- 要么为您提供该目录
- 或运行服务器本身的提交和推送步骤
- 或者为您提供对实时服务器的临时访问权限,以便您可以提交和推送
PS:一般不建议从服务端提交,但特殊情况下可以。
好吧,从 .gitignore
中删除目录,然后在本地代表中检查此目录中是否有文件。如果为真,commit
和 push
将它们发送给远程代表。
如果不是,但您知道文件在远程代表中,那么您需要推送 .gitignore
不带文件夹的文件,并从远程代表提交更改。
如果repo中没有文件,需要重新添加到项目中。
我们已被授予对客户端远程存储库 (CodebaseHQ
) 的开发访问权限,但由于 .gitignore
中的条目,远程存储库中不存在一个目录。
我已经修改了 .gitignore
(删除了必要的条目)并将其推送到远程仓库,但是无论如何我现在可以将这个目录从实时服务器拉到仓库中吗?
我没有直接访问服务器的权限。我将本地仓库推送到 codebasehq
上的远程仓库,然后使用 deployhq
.
编辑
由于有投票结束此问题,我将澄清我的问题。
实时服务器上存在一个目录,但 codebasehq
上的存储库中不存在该目录。我怎样才能将此目录从服务器获取到存储库中(它已从 .gitignore
中删除)?
不,你不能。推送更新的 .gitignore
意味着如果现在将代码从 repo 拉入实时服务器,那么如果您这样做,该目录将在那里可见 git status
。仅此而已。
您仍然需要访问该服务器,以便从那里提交目录并添加目录,并将更改推送回存储库,稍后可以从那里将它们拉到下游。
所以你应该要求客户
- 要么为您提供该目录
- 或运行服务器本身的提交和推送步骤
- 或者为您提供对实时服务器的临时访问权限,以便您可以提交和推送
PS:一般不建议从服务端提交,但特殊情况下可以。
好吧,从 .gitignore
中删除目录,然后在本地代表中检查此目录中是否有文件。如果为真,commit
和 push
将它们发送给远程代表。
如果不是,但您知道文件在远程代表中,那么您需要推送 .gitignore
不带文件夹的文件,并从远程代表提交更改。
如果repo中没有文件,需要重新添加到项目中。