我试图改变我的工作流并开始使用git而不是ftp。我选择Tower来管理我的本地存储库。我在我的服务器上创建了一个裸机,并通过塔克隆它。到现在为止还挺好。当我提交并推送我的更改时,我的文件不更新(我通过FTP打开它们,但它们没有更改)。所以我删除了我的本地存储库并从远程服务器克隆,并且发生了更改,文件发生了更改。有没有人有任何理想,为什么这样呢?提前致谢。应用从git进行的更改
1
A
回答
3
您需要了解工作副本(包含签出的文件)和回购(包含提交并在推送时更新)之间的差异。如果您想在相关存储库收到新提交时更新工作副本,则可能需要编写post-receive
钩子。
1
我正在使用类似的方法来部署我的主页。这里是我的post-receive
钩看起来像:
#!/bin/sh -eu
export GIT_DIR=/path/to/bare-git-repo
export GIT_WORK_TREE=/path/to/working-tree
cd "$GIT_WORK_TREE"
git reset --hard
git checkout
请注意,我用的git的纯仓库本身及其工作树单独的目录;如果你有.git
子目录工作树,这应该是足够了:
$ cat .git/hooks/post-receive
#!/bin/sh -eu
git checkout -f
你也必须在一旦执行此命令接受库侧:
git config receive.denyCurrentBranch ignore
否则混帐不接受推以检出工作树进行回购。
+0
太棒了,完美的作品。非常感谢。 – Renato 2013-02-11 13:11:13
相关问题
- 1. GIT,在右分支进行更改
- 2. 命令`git remote add`进行更改?
- 3. Eclipse Git - 同时进行更改
- 4. git rebase在哪里进行更改
- 5. 使用Git和Intellij进行提交更改时的错误
- 6. 使用git进行更改时出现奇怪的情况
- 7. 如何在git中使用我的更改进行合并?
- 8. 对git forked repo进行更改并通过git获取更新的代码URL
- 9. 确定哪些git文件使用Ruby进行了更改?
- 10. git pull - 从Java更改
- 11. 对没有更新的应用程序进行更改
- 12. Eclipse中没有更新APK时更改PhoneGap的应用进行
- 13. 退出Vim,不进行Git中的更改
- 14. 通过过滤分支进行的Git推送更改
- 15. 的Git更改用户
- 16. 更改Git的用户名
- 17. git取/合并非快进更改?
- 18. 从递归更改此进行迭代
- 19. 修改开源项目,同时使用Git进行远程更改
- 20. 使用Git更新一个文件,对第二个文件进行更改
- 21. 检测由单独的应用程序Django进行更改的应用程序和用户中的更改。
- 22. 撤消Git中的行结束更改
- 23. 从svn到git的xcode更改
- 24. Git:还有谁在对同一个文件进行更改
- 25. 创建一个git分支在对主进行更改之后
- 26. Git无法在服务器文件上进行更改
- 27. git clone - 本地更改后无法进行pull或push
- 28. Git - 对多个主分支进行更改
- 29. Git忽略目录而不对远程进行更改
- 30. git合并,而不提前进行本地更改
非常感谢您的帮助。是否有一个git命令来手动将这些更改从回购库应用到我的工作副本中?如果有,我应该在我的回购或工作副本上运行命令吗? – Renato 2013-02-08 19:27:59
'git checkout master'或者更合适的'git checkout'命令会将工作副本更新到指定的状态。在需要更新的工作副本中运行该命令(在您的情况下,它显然是服务器上的工作副本,附加到您向其推送更改的回购站)。 – wRAR 2013-02-08 19:39:30
我按照你的建议运行了'git pull',然后运行了'git checkout',它运行良好。万分感谢。 – Renato 2013-02-08 20:20:12