我想在我公司的GitLab安装中使用自定义logo-white,logo-black和favicon.
我用Google搜索了我的屁股并尝试了一些我能找到的东西来清除这些该死的图像,似乎没有任何效果.
这是唯一似乎成功运行的进程,但它不会删除图像:
bundle exec rake cache:clear RAILS_ENV=production service gitlab stop redis-cli FLUSHALL bundle exec rake assets:precompile RAILS_ENV=production service gitlab start
然后我清除我的浏览器缓存并转到域,并再次有相同的该死的图像!
我甚至删除了我可以从应用程序中找到的所有徽标和favicon文件,但不知何故它们仍然存在.
救命!
assets:clean
从版本6.0开始,有一个rake任务.因此从命令行运行bundle exec rake assets:clean RAILS_ENV=production
它将删除资产.
你训练它们之后,你可能想要运行bundle exec rake assets:precompile RAILS_ENV=production
来重建它们.
我能够在这里结合一些信息,并使用以下步骤成功替换了徽标(请注意,使用最新版本的gitlab,7.11.4,在CentOS 7上,某些命令略有不同,所以我将其添加为回答希望它对新版本的用户有所帮助):
替换适当的图像 /opt/gitlab/embedded/service/gitlab-rails/app/assets/images
停止使用gitlab sudo gitlab-ctl stop
刷新rails缓存,sudo gitlab-rake assets:clean RAILS_ENV=production
然后刷新sudo gitlab-rake assets:precompile RAILS_ENV=production
使用启动gitlab sudo gitlab-ctl start
出于某种原因,我在precompile
步骤中遇到了权限错误.通过将写入权限更改/opt/gitlab/embedded/service/gitlab-rails/public/assets/
为全局可写(a+w
)来解决此问题.它似乎gitlab-rake
以git
用户身份运行,即使我使用过sudo
.因此,经过上述步骤后,我还将所有者更改为root(sudo chown -R root:root /opt/gitlab/embedded/service/gitlab-rails/public/assets
),并将权限重新使用a-w
.
我认为升级gitlab会将徽标还原为原始徽标,但我还没有尝试过.