1

我正在尝试使用作为我的起始主题来设置我的第一个基于 Git 的 WordPress 主题开发。我打算在本地开发一个主题并时不时地推送到我的 Dreamhost VPS。阅读Dreamhost Wiki上的一些信息。我还遵循了David Winter 的关于使用 Git 设置 WordPress 核心更新选项的教程。我还以主题根源为基础为我的主题建立了另一个 repo。也许我也应该将其设为子模块,但我只是在这里学习。我在服务器上设置了一个裸仓库,并在本地尝试发出拉取请求,但这不起作用。

本地

对于我的本地主题,我有这个:

$ pwd
/opt/local/www/imagewize/wp-content/themes/img/.git
jaspersmbp:.git jasper$ cat config

这里是主题的 git 配置文件:

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
[remote "origin"]
    url = ssh://me@domain.com/~/domain.com/wp-content/themes/img
    fetch = +refs/heads/*:refs/remotes/origin/*

WordPress子模块详细信息是:位置:

$ pwd
/opt/local/www/imagewize

Git 配置文件:

core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
[submodule "wordpress"]
    url = git://github.com/WordPress/WordPress.git

偏僻的

在主题内的远程 DH VPS 上,我有以下配置:

core]
    repositoryformatversion = 0
    filemode = true
    bare = true

当我在本地主题内并尝试连接到 Dreamhost VPS 时,我得到:

$   git pull origin master
    fatal: Couldn't find remote ref master
    me:img jasper$ fatal: The remote end hung up unexpectedly

调试

$ git branch -a

在本地加载 nada..

git push origin master
error: src refspec master does not match any.
error: failed to push some refs to 'ssh://me@domain.com/~/imagewize.com/wp-content/themes/img'

更新

在配置中调整 url,现在我得到:

git push origin master
fatal: '/imagewize.com/wp-content/themes/img' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

更新二

我做了更多的在线阅读,在我发现src refspec master 在 git 中推送提交时不匹配任何内容后,我意识到我确实添加了,但没有提交。

git commit -m 'Initial commit'
[master (root-commit) 7bbcd6a] Initial commit
 137 files changed, 17766 insertions(+)
 create mode 100644 .gitignore
.........

接着:

$ git push origin master
Counting objects: 150, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (144/144), done.
Writing objects: 100% (150/150), 259.70 KiB, done.
Total 150 (delta 26), reused 0 (delta 0)
To ssh://me@domain.com/~/domain.com/wp-content/themes/img/
 * [new branch]      master -> master

我们已经启动并运行了!

只是不知何故我的本地文件没有上传到远程主题文件夹

$ ls -lha
total 16K
drwxrwxr-x 7 me server  147 Oct  7 20:21 .
drwxr-xr-x 6 me server  105 Oct  7 20:21 ..
-rw-rw-r-- 1 me server   23 Oct  7 20:21 HEAD
drwxrwxr-x 2 me server   10 Oct  7 20:21 branches
-rw-rw-r-- 1 me server   66 Oct  7 20:21 config
-rw-rw-r-- 1 me server   73 Oct  7 20:21 description
drwxrwxr-x 2 me server 4.0K Oct  7 20:21 hooks
drwxrwxr-x 2 me server   28 Oct  7 20:21 info
drwxrwxr-x 4 me server   40 Oct  7 20:21 objects
drwxrwxr-x 4 me server   41 Oct  7 20:21 refs

,但我应该尽快解决这个问题..

更新三

裸存储库没有工作目录,似乎在此处进行了解释。他们似乎说我应该在生产中克隆。因此,无论我在哪里创建裸存储库,都不是我克隆最终结果的地方。

4

1 回答 1

0

只需要更改设置。我推送的地方将只是 git 存储库,用于跟踪 Github 之类的更改,并且在我想要获得最终结果的任何地方,我都会克隆存储库。

于 2012-10-08T04:40:59.090 回答