I had created created repository in UNIX machine,
$sudo git --bare init /var/repos/git/repo00001
Also I have done following commands executed for individual UNIX users,
$ git config --global user.email "[email protected]"
$ git config --global user.name "Anand Sadasivam"
Under which directory I should be creating git repsitories, I have issue while check-in files. What should be the permission, user, group needs to be set for directory /var/repos/git on under which I am creating git repositories. At present its done under root privilege. Do I need to create separate UNIX user for git exclusively or any specific step or git command I have to follow to create user first before creating repository with git init
I had observed --bare for init created some basic structure under git repository. But when I did git clone my repository was empty.
Since I had used --bare, I could see folder structure created as follows,
# ls
HEAD branches config description hooks info objects refs
Following are the commands I have done at git bash client side in Windows for initial check-in of some file,- Readme.txt
$ git clone [email protected]:/var/repos/git/repo00001
Cloning into 'repo00001'...
[email protected]'s password:
warning: You appear to have cloned an empty repository.
<<I had created Readme.txt file under the present directory>>
$ git add Readme.txt
$ git status
On branch master
$ git commit -a
[master (root-commit) 8201309] Initial commit
Committer: Anand Sadasivam <[email protected]>
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate.
You can suppress this message by setting them explicitly. Run the
following command and follow the instructions in your editor to edit
your configuration file:
git config --global --edit
After doing this, you may fix the identity used for this commit with:
git commit --amend --reset-author
1 file changed, 1 insertion(+)
create mode 100644 Readme.txt
$ git push origin master
[email protected]'s password:
Counting objects: 3, done.
Writing objects: 100% (3/3), 240 bytes | 120.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
error: remote unpack failed: unable to create temporary object directory
To xx.xx.xx.xxx:/var/repos/git/repo00001
! [remote rejected] master -> master (unpacker error)
error: failed to push some refs to '[email protected]:/var/repos/git/repo00001'
$ git show-ref
82013098f6801ea32bb620b612f779c8dade6d83 refs/heads/master
$ git push origin HEAD:master
[email protected]'s password:
Counting objects: 3, done.
Writing objects: 100% (3/3), 240 bytes | 120.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
error: remote unpack failed: unable to create temporary object directory
To xx.xx.xx.xxx:/var/repos/git/repo00001
! [remote rejected] HEAD -> master (unpacker error)
error: failed to push some refs to '[email protected]:/var/repos/git/repo00001'
Is this situation had arisen because Windows Settings been followed while git bash/gui client installation.
Or it is completely repository permission issue or repository creation user issue in UNIX
Repository should be created with --bare init --shared, I mean shared option should be additional and it should be done under,- say git login and sudo command must not be used. Once repository is created it will have rw access to group users.
git@xx-xx-xx-xxx~/repos/repo00001$ ls -l
total 32
-rw-rw-r-- 1 git git 23 Apr 20 06:44 HEAD
drwxrwxr-x 2 git git 4096 Apr 20 06:44 branches
-rw-rw-r-- 1 git git 66 Apr 20 06:44 config
-rw-rw-r-- 1 git git 73 Apr 20 06:44 description
drwxrwxr-x 2 git git 4096 Apr 20 06:44 hooks
drwxrwxr-x 2 git git 4096 Apr 20 06:44 info
drwxrwxr-x 62 git git 4096 Apr 25 08:22 objects
drwxrwxr-x 4 git git 4096 Apr 20 06:44 refs
Hence I have added all the users who needs to work with git repository to the group git, as you can see git:git is created repository and group git has rwx for most of the folder under which revisions going to be maintained.
I've added & verified if the user is added to group,- git
anand@capsimt00001:~$ sudo usermod -a -G git anand
anand@capsimt00001:~$ groups
anand geckoo git
groups command displays all the group that particular user is belongs too.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With