Trouble setting up git repository

30 views
Skip to first unread message

mshe...@gmail.com

unread,
Nov 30, 2023, 9:07:00 AM11/30/23
to bibledit...@googlegroups.com
Is there a detailed guide on setting up a git repository for bibledit to use?
I am running into errors when I set it up using the steps provided through the
application. I have looked at other guides, but can't seem to get it setup.
Hoping someone here will be willing to walk me thru it tep by step if
necessary.

Are there assumptions which are given? Example: are there prerequisites or
configurations which are assumed for a successful setup of a git repository?

My setup:
1. Linux server running bibledit-cloud on a debian based system hosted locally
in my home.
2. I have a usb-drive I wish to use for the git repository. It is mounted at /
media/usb1.
3. /media/usb1/bibledit is read/write for any/all users ... chmod -R 0777
4. the repository name is 'bibledit'.
5. I created and initialized a 'bare' repository.
6. I can add/remove a file as a regular user so I know permissions are not a
problem.
the git tree is setting up, but I'm not sure I'm doing it right! I get a note
to designate 'master' as the default branch. I follow those steps listed by
the 'git init' command sequence.
7. When I go back to bibledit and complete the setup thru the app I am getting
the following output error:

'Repository URL: file:///media/usb1/bibledit

Bibledit links to the remote repository.

Bibledit will copy its own data to the remote repository.

Read access to the repository is successful.
Copy repository to Bibledit
Configure copied data
A file was added to the data successfully.
The file was committed successfully.
Your configuration specifies to merge with the ref 'refs/heads/master'
from the remote, but no such ref was fetched.
Changes were pulled from the repository successfully.
error: remote unpack failed: unable to create temporary object directory
To file:///media/usb1/bibledit
! [remote rejected] master -> master (unpacker error)
error: failed to push some refs to 'file:///media/usb1/bibledit'
'

Hoping someone can shed some light on this and recommend a fix. Thanks!
Error: The repository could not be linked.

Pushing changes to the repository failed.


Teus Benschop

unread,
Nov 30, 2023, 2:53:41 PM11/30/23
to bibledit...@googlegroups.com
Hello Mark,

Repeating the steps to link to a repository on a USB stick here runs into the same errors as those listed by you.

That is weird because it has worked well in the past.

About a fix, I'll look into it.

Teus Benschop


--
You received this message because you are subscribed to the Google Groups "Bibledit-General" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bibledit-gener...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bibledit-general/13399705.uLZWGnKmhe%40rpidesktop.

Teus Benschop

unread,
Nov 30, 2023, 3:39:03 PM11/30/23
to bibledit...@googlegroups.com
Hello Mark,

The problem here was the same as the problem you were facing.
It appeared to be a permission problem.
It was resolved by setting permissions right.

This was how it was resolved.

1. Determine the username that Bibledit Cloud runs as, say, user "foo".
2. As user "foo" create a git repository at, say "/tmp'stick3" through $ git init --bare
3. In Bibledit Cloud link the repository as usual, in this case to "file:///tmp/stick3"

This is the result of linking it:

Bible: Sample
Repository URL: file:///tmp/stick3

Bibledit links to the remote repository.
Bibledit will copy its own data to the remote repository.
Read access to the repository is successful.
Copy repository to Bibledit
Configure copied data
A file was added to the data successfully.
The file was committed successfully.
Your configuration specifies to merge with the ref 'refs/heads/master'
from the remote, but no such ref was fetched.
Changes were pulled from the repository successfully.
To file:///tmp/stick3
* [new branch] master -> master
Changes were pushed to the repository successfully.
The temporal file was removed from the data successfully.
The removed temporal file was committed successfully.
To file:///tmp/stick3
7ef4ab9..449ce21 master -> master
The changes were pushed to the repository successfully.
Storing the local Bible data to the staging area.
The local Bible data was staged successfully.
The local Bible data was committed successfully.
To file:///tmp/stick3
449ce21..123a8b1 master -> master
The local Bible data was pushed to the repository successfully.
The repository was linked successfully.
Regularly choose menu Tools - Send/receive to synchronize the Bible with the repository. It will do that automatically for you once a night.
Ready.

So, in short, the repository must be created through the same user as runs Bibledit Cloud, and it will work.

Teus Benschop


Mark Shelby

unread,
Dec 1, 2023, 12:59:10 AM12/1/23
to Bibledit-General
I wanted to post here, my solution and steps -in case it may help someone else out.

1. From within the directory of my mounted usb stick I greated and initialized a 'bare' and 'shared' git repository housed in it's own folder: 'git init --bare --shared bibledit_repo.git'
2. I gave the new folder universal read/write permissions: 'chmod -R 0777 bibledit_repo.git'

Because you can't do a 'git add' or a 'git commit' on an empty bare git repo I did the following:

3. from inside the newly created directory: STEP 1: 'cd bibledit_repo.git' then STEP 2: 'git config receive.denyCurrentBranch ignore'

That's it! There's probably another way to do it, but doing what I did set up a git repo for me. Next I went into bibledit and setup the repository through bibledit using the 'Settings...Repository' links.
I use the preselected options. when it ran the setup output was successful.

Next I did a manual 'Send/Receive' (Tools... Send/Receive) and the bibledit software did a successful 'push' to the git repo!

My next question is that I'm wondering if I should have chosen the 2nd option under step 3:

Subsequent sending and/or receiving.

 'Send data to and receive it from the repository. After the setup is complete, Bibledit will send data to the repository, and receive data from the repository.'


Seems like this would be the best option if I have a team working on a bible translation.
Maybe that's wrong?

Teus Benschop

unread,
Dec 1, 2023, 1:40:42 PM12/1/23
to bibledit...@googlegroups.com
Hello Mark,

Great that it now works and for posting the steps that helped.

About the other option, to both send to and receive from the repository. 
Yes, it can be used for collaboration, but to a limited degree, since it only synchronizes the Bible text, nothing else.

Bibledit Cloud has its own advanced system for collaboration, with one Cloud server, and multiple Bibledit clients. 
These do not only help for collaboration on the Bible text, but also help with consultation notes and other items get synchronized too. 
That's the recommended solution for team collaboration.

Another way to collaborate is that all team members only work in Bibledit Cloud, this way there's automatic synchronisation of data.

Regards, Teus.

Mark Shelby

unread,
Dec 5, 2023, 1:18:24 AM12/5/23
to Bibledit-General
Just wanted to say how much I'm enjoying using (and learning!) the software. It's very comprehensive.
Reply all
Reply to author
Forward
0 new messages