1

I've recently created a new document class that implements all the stylistic standards and requirements for documentation at my company. Now I'm trying to find the best way that this style file and required images can be used by others in the company. (and the company alone)

I want a solution where the company_style.cls is:

  1. version controlled in it's own repository
  2. easily available for others to use in their documents
  3. easy for existing documents to update to newer versions of company_style.cls
  4. is not in a sub repository.

The current solution that I have is as followes:

  1. the company_style.cls and required images are in a mercurial repository.
  2. our CI server stores versions of the style
  3. users can download and extract the style artifact from the CI server next to the root .tex file so that they can specify \documentclass[numbered]{style/company_style}
  4. compile and enjoy

Other notes:

  1. The "required images" are things like company logo, and footer images. I don't want to make people download these separately.
  • 2
    Welcome to TeX.SX! While the file at question is a TeX file I don't think this question is really related to LaTeX. It is about sharing some files in an efficient and version controlled manner. I therefore vote to close it as off-topic. – Skillmon Apr 04 '19 at 23:59
  • All common tex inputs could be subject to usual warnings about cloud file systems accents etc be simply on a server user mapped share or better still in a user local texmf / texinputs folder system –  Apr 05 '19 at 00:19
  • 2
    If everyone in your company who must use this can work on a single host, then all you have to do is post it in a "local" TDS (TeX Directory Structure) tree. That can be maintained centrally, and will be treated the same as a central TeX Live installation, except that it won't be removed/replaced when a new version of TeX Live is installed. If users work on separate desktops, if these are maintained centrally, the same principle holds, except it will need to be installed separately on all workstations. You will want to follow corporate policy for software installation. – barbara beeton Apr 05 '19 at 01:45
  • Thank you for comments, and thanks for the welcome! While I agree with @Skillmon, I don't think that any file sharing approach works for all cases. At my company the way I've explained it is how do share most other packages, but I'm just not sure if there is a better way specifically for latex style packages. – Chui Vanfleet Apr 05 '19 at 01:53
  • You could use a shared folder in your network that every workstation/desktop can access and add that to the usertree, e.g., with TeXLive you could do something like tlmgr init-usertree --usertree <path/to/shared/folder>. The network folder can be a version controlled repository. This way everyone would use the same version of the files at any given time, and if one needs a specific version, one could clone a specific commit into the projects folder. – Skillmon Apr 05 '19 at 09:58

0 Answers0