From: Luke <haz...@gm...> - 2009-10-27 18:13:34
|
Several colleagues and I use Jabref to manage our references on each of our personal machines. Currently, we use the old fashioned email method to share papers and citations. We would like to combine our efforts to create a repository of some sort where we can store the .bib files along with any electronic copies of citations which we may have. Here is our ideal scenario: 1) Each person runs Jabref, and if they have internet access, their local copy of the repository is updated from the main repository. If they don't have internet access, Jabref works off of the latest local copy. I am familiar with git, so if there was a way to use git for this part, it would be ideal. 2) If they add a paper to their local repository and/or add a citation to a .bib file, they can push the changes to the main repository (git push). We don't expect many merge conflicts here, but if they occurred they would have to be resolved by hand. Having git pull and push automatically run every 5-10 minutes while Jabref was open would help prevent most merge conflicts. In most cases, people wouldn't be stepping on the toes of other peoples reviews, and the only other changes to the repository would be the addition of new citations and .pdfs, so those shouldn't cause any merge conflicts during a push to the main repository. So my questions are: 1) What would the best way to set up sharing of the .bib files and the .pdfs? I could see this being done with a git repository, but then git would need to be installed on each users computer, adding to the complexity of things a bit for different platforms. I could also see each user having their own remote repository that they have complete access to via Samba or some other network file sharing system, and then having a person whose job it is to incorporate their changes into the main repository periodically, but this seems like it would be a lot more work and more fraught with peril. 2) If git were used, would it be better/easier to write a jabref plugin that took care of running the git push/pull commands, or would this be better to do as a separate shell script? I don't know java, so I don't know what would be involved in calling a few system commands, but it seems like it should be doable. Does anybody else have the same kinds of needs as what I described? Are there solutions out there that already exist? I haven't had much luck with finding one. Thanks, ~Luke |