我最近开始在Git工作。我也使用Adobe Dreamweaver CS6。我正在尝试使用master分支作为我的“实时”目录,这是我网站上的实际实时代码。我想基本上使用其他分支来测试代码,我将它们与主分支合并以提交最终产品。在Dreamweaver中,我将本地站点文件夹设置为Git存储库。在Dreamweaver中,我还设置为在保存时自动上传文件。唯一的问题是,现在每当我在Dreamweaver中的主分支或另一个分支上保存文件时,无论我是否想要它们,文件都会自动上传到FTP。我想我将需要一些如何使分支对Dreamweaver唯一,因此它不会自动上传主分支文件更改。我该如何解决这个问题?
答案 0 :(得分:1)
您可以使用git
自动更新您的网站,而不是使用FTP传输更改的文件。我将描述一个简化的设置,允许在使用git将更改推送到主分支时更新Web服务器上的代码,即使这是一个简化,我希望它可以帮助作为参考(我已经看到了这种模式很多次,所以我希望它会有用。)
创建一个裸(也称为远程)存储库(有免费和商业在线服务,如github或bitbucket,或者您可以为此目的[通常在企业环境中]拥有自己的服务器)。此存储库充当开发人员本地副本与生产服务器之间的中介。
将您的本地git存储库指向远程
git remote add origin git://example.com/repo/project.git
将所有分支和标记从本地存储库推送到远程
git push --all
git push --tags
创建一个git hook,以便在推送到master分支时更新服务器副本。
Git hook是一个具有预定义名称的脚本,您可以将其放在存储库根目录的hooks
文件夹中。
此步骤要求在Web服务器上安装git
,如果裸存储库位于不同的计算机上(那么可能还需要对Web服务器进行SSH访问)。
现在,当您更新本地计算机上的代码并希望发布更改以更新实时网站时,您只需将提交的更改推送到主分支:
git commit ...
git push
假设步骤4中的git hook配置为仅在推送主分支时更新网站,您可以使用其他分支进行开发和测试。
您可能也对持续集成流程或构建Jenkins CI或Hudson CI等软件感兴趣。
这是一种更通用的方法,不仅限于像Dreamweaver这样的特定编辑器或IDE,但我希望这仍然有用。