Re: [git-users] Re: newbie confused about git server on windows 8

2013-11-12 Thread Konstantin Khomoutov
On Mon, 11 Nov 2013 20:41:51 -0800 (PST)
Ray Tayek rta...@gmail.com wrote:

  hi, i have git version 1.8.4.msysgit.0 installed.
  if i run this as a daemon, where are the repositories located?
  (i.e. where do i do a mkdir foo.git; cd foo.git; git init --bare?)
[...]
 doing a push origin master got an acces denied or repository not
 exported. so i added --enable=receive-pack to the deamon invocation.

Are you aware that enabling this mode allows everyone to push
arbitrary data into your repository without any authentication?

Let me repeat: no authentication is supported by git-daemon, and that's
why you have to jump through the hoops to even allow (the usual)
read-only access by this daemon to a repository, and enabling write
access requires a special command-line option.
In other words, this kind of setup is reserved for special cases in a
controlled environment.

 now push origin master says:
  counting objects: 3 done
  writing objects: 100% (3/3)
 
 and then hangs :(

This is a known bug in Git for Windows [1] which turned out to be
incredibly hard to track down.  Since no one pushes to git-daemon
anyway, the bug is still not fixed.

It has been discovered that disabling a certain feature known as
side-band-64k push protocol extension [2] helps (see comments #1 and
#2 in [1]).

So to help the problem you basically have several options:

1) Host your shared Git repos on a box running an OS native to Git,
   such as something implementing POSIX (GNU/Linux, *BSD, Darwin etc).

   This will make setting up conventional server-side Git setup
   basically a no-op as a working SSH server is just one package
   install away.  Setting up Git behind an HTTP server is more
   complicated but well documented.  You could also opt for using
   some front-end to virtualize Git users if SSH is used for providing
   access; the most popular is gitolite [9].

   IMO, in our brave new world full of cheap virtualization, this is
   *the* way to go: just grab an OS [3] and install it in on a
   virtualised server.  A VPS/VDS is also an option.

2) Continue to use Windows as a hosting platform but stop using
   git-daemon.  There are guides on setting up a Git server behind
   IIS using nothing but bare hands, but special solutions for this
   do exist [6], [7].

   Another solution is to use gitblit [8] -- it does not use Git for
   Windows on the server at all relying instead on a pure Java library
   called JGit.

3) Build Git for Windows from the source (it's free software, so it
   comes with full source code and a development environment to build
   it -- *this* is what really called msysGit [4]), having disabled
   that side-band-64k feature.  I don't know how to disable it for sure,
   so have no off-hand solution to this.

4) Attempt to binary-patch Git [5] to disable the offending feature
   (on the client *or* the server, not on both).

   This actually breaks the push protocol -- the parties will present
   a differing names for the same feature and so it won't be negotiated.

   IMO, this stinks.  And you'll have to repeat patching after
   installing a new version.

 git log says: fatal: bad default revision  'HEAD'

You failed to tell us where you're running this -- on the client
or on the server?

1. http://code.google.com/p/msysgit/issues/detail?id=457
2. https://github.com/git/git/commit/a886ba2
3. http://www.debian.org
4. http://code.google.com/p/msysgit/downloads/list?q=net+installer
5. http://billauer.co.il/blog/2012/10/git-pull-windows-freeze-receive-pack/
6. http://gitweb.codeplex.com/
7. https://bonobogitserver.codeplex.com/
8. http://gitblit.com/
9. https://github.com/sitaramc/gitolite/

-- 
You received this message because you are subscribed to the Google Groups Git 
for human beings group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [git-users] Re: newbie confused about git server on windows 8

2013-11-12 Thread Ray Tayek

At 02:12 AM 11/12/2013, Konstantin Khomoutov wrote:

On Mon, 11 Nov 2013 20:41:51 -0800 (PST)
Ray Tayek rta...@gmail.com wrote:
...
 doing a push origin master got an acces denied or repository not
 exported. so i added --enable=receive-pack to the deamon invocation.

Are you aware that enabling this mode allows everyone to push
arbitrary data into your repository without any authentication?


yes


... no authentication is supported by git-daemon, ...


i understand.


 now push origin master says:
  counting objects: 3 done
  writing objects: 100% (3/3)

 and then hangs :(

This is a known bug in Git for Windows [1] which turned out to be
incredibly hard to track down.  Since no one pushes to git-daemon
anyway, the bug is still not fixed.


ok.


It has been discovered that disabling a certain feature known as
side-band-64k push protocol extension [2] helps (see comments #1 
and #2 in [1]).


oh my, looks like deep yogurt to me.


So to help the problem you basically have several options:

1) Host your shared Git repos on a box running an OS native to Git, .


that box needs to run windows.


   IMO, in our brave new world full of cheap virtualization, this is
   *the* way to go: just grab an OS [3] and install it in on a
   virtualised server.  A VPS/VDS is also an option.


i may try that if all else fails.


2) Continue to use Windows as a hosting platform but stop using
   git-daemon.  ...


i don't know any iis.


   Another solution is to use gitblit [8] -- it does not use Git for
   Windows on the server at all relying instead on a pure Java library
   called JGit.


i am java guy, i will look into jgit.



3) Build Git for Windows from the source  ...


the reason i am trying to get git up is that i want to fool around 
with jenkins.



4) Attempt to binary-patch Git [5] to disable the offending feature
   (on the client *or* the server, not on both).


i'll pass on this one.


 git log says: fatal: bad default revision  'HEAD'

You failed to tell us where you're running this -- on the client
or on the server?


running on the server (localhost) in the foo.git repo. and the same 
thing happens if i try the experiment with two pcs.


thanks for an extremely good answer.





1. http://code.google.com/p/msysgit/issues/detail?id=457
2. https://github.com/git/git/commit/a886ba2
3. http://www.debian.org
4. http://code.google.com/p/msysgit/downloads/list?q=net+installer
5. http://billauer.co.il/blog/2012/10/git-pull-windows-freeze-receive-pack/
6. http://gitweb.codeplex.com/
7. https://bonobogitserver.codeplex.com/
8. http://gitblit.com/
9. https://github.com/sitaramc/gitolite/


---
co-chair http://ocjug.org/

--
You received this message because you are subscribed to the Google Groups Git for 
human beings group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[git-users] files case name changes detection.

2013-11-12 Thread Gabby Romano
Hi All,

I would like to be able to prevent case name changes done on windows 
clients and being pushed to our linux remote repository. when pulled, it 
confuses the other windows clients and messes things up. I want to use a 
hook for that along with the rename detection mechanism of git, if I can 
call it this way. 

my question is - what would be the best way to approach this in the hook ? 
detect the rename and check the content is the same (sha1 check ? )

am I wrong regarding the approach in general and there is a much better way 
to do this ? 

Thanks,

Gabby.

-- 
You received this message because you are subscribed to the Google Groups Git 
for human beings group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [git-users] Issues when doing the push by using the git extensions

2013-11-12 Thread Konstantin Khomoutov
On Tue, 12 Nov 2013 11:26:22 -0500
lingfei ouyang oylf1...@gmail.com wrote:

 currently I got error when trying to push the changes into the git
 repo:
 
 fatal: protocol error: bad line length character: Pass

Does pushing using plain Git work?
Try to do that using the exact command Git Extension invoked (and
showed you in the error message).

Which protocol is used to access the remote named origin?
It is SSH or HTTP[S]?

-- 
You received this message because you are subscribed to the Google Groups Git 
for human beings group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [git-users] Re: git clean help

2013-11-12 Thread David R
$ git status
# On branch master
# Untracked files:
#(use git add file... to include in what will be committed)
#
# Spoon-Knife/
nothing added to commit but untracked files present (use git add to track)


the spoon-knife is what im trying to clean through git


On Tue, Nov 12, 2013 at 12:47 AM, Jimit Modi jimy2004k...@gmail.com wrote:

 As far as I know, empty directories are not tracked under git.
 Can you paste the output of git status here.


 --
 Jim(y || it)




 On Tue, Nov 12, 2013 at 9:09 AM, William Seiti Mizuta 
 william.miz...@gmail.com wrote:

 This empty directory is under untracked files state?


 William Seiti Mizuta
 @williammizuta
 Caelum | Ensino e Inovação
 www.caelum.com.br


 On Tue, Nov 12, 2013 at 12:04 AM, David R cdrtz1...@gmail.com wrote:

 git status shows the empty directory that im trying to clean

 --
 You received this message because you are subscribed to the Google
 Groups Git for human beings group.
 To unsubscribe from this group and stop receiving emails from it, send
 an email to git-users+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.


  --
 You received this message because you are subscribed to the Google Groups
 Git for human beings group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to git-users+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.


  --
 You received this message because you are subscribed to a topic in the
 Google Groups Git for human beings group.
 To unsubscribe from this topic, visit
 https://groups.google.com/d/topic/git-users/8N4Fg07o8zc/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to
 git-users+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.


-- 
You received this message because you are subscribed to the Google Groups Git 
for human beings group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [git-users] Re: git clean help

2013-11-12 Thread PJ Weisberg
On Nov 12, 2013 7:32 PM, David R cdrtz1...@gmail.com wrote:

 $ git status
 # On branch master
 # Untracked files:
 #(use git add file... to include in what will be committed)
 #
 # Spoon-Knife/
 nothing added to commit but untracked files present (use git add to
track)


 the spoon-knife is what im trying to clean through git

Are there files in that directory that are covered by .gitignore rules,
maybe?

-- 
You received this message because you are subscribed to the Google Groups Git 
for human beings group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [git-users] Re: git clean help

2013-11-12 Thread William Seiti Mizuta
In which directory have you run the git clean -fd command?


William Seiti Mizuta
@williammizuta
Caelum | Ensino e Inovação
www.caelum.com.br


On Wed, Nov 13, 2013 at 1:01 AM, PJ Weisberg pjweisb...@gmail.com wrote:

 On Nov 12, 2013 7:32 PM, David R cdrtz1...@gmail.com wrote:
 
  $ git status
  # On branch master
  # Untracked files:
  #(use git add file... to include in what will be committed)
  #
  # Spoon-Knife/
  nothing added to commit but untracked files present (use git add to
 track)
 
 
  the spoon-knife is what im trying to clean through git

 Are there files in that directory that are covered by .gitignore rules,
 maybe?

 --
 You received this message because you are subscribed to the Google Groups
 Git for human beings group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to git-users+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/groups/opt_out.


-- 
You received this message because you are subscribed to the Google Groups Git 
for human beings group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[git-users] Re: files case name changes detection.

2013-11-12 Thread Thomas Ferris Nicolaisen
On Tuesday, November 12, 2013 5:11:40 PM UTC+1, Gabby Romano wrote:

 Hi All,

 I would like to be able to prevent case name changes done on windows 
 clients and being pushed to our linux remote repository. when pulled, it 
 confuses the other windows clients and messes things up. I want to use a 
 hook for that along with the rename detection mechanism of git, if I can 
 call it this way. 

 my question is - what would be the best way to approach this in the hook ? 
 detect the rename and check the content is the same (sha1 check ? )


If someone changes the contents of the file as well as renaming it, I guess 
the sha1 check wouldn't work. 

How about parsing the output of `git status` in a pre-commit hook and 
checking whether the same filename string appears twice, ignoring case?

I'm not on a Windows machine, so I can't really test this. I'm on some OSX 
semi-case insensitive system where changing the casing of a filename 
doesn't even register in Git. I need to first `git rm` the file, create the 
new one with the same contents and stage it in order to see the rename:

# On branch master
# Changes to be committed:
#   (use git reset HEAD file... to unstage)
#
#   renamed:pom.xml - POM.xml
#

As soon as I do `git reset`, the change is gone. Quite funny. Anyhow, I'm 
not sure how all these corner cases will work out on your filesystem. Best 
thing is probably to start playing around with it.

-- 
You received this message because you are subscribed to the Google Groups Git 
for human beings group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[git-users] Git with http protocol and DAV module

2013-11-12 Thread shlo . afgin


I follow the instruction for creating a repository with http protocol with 
mod DAV.
The instruction say each time user want a new repository, need to create 
bare repository, cd to the repository directory and run:


*mv hooks/post-update.sample hooks/post-update**chmod a+x 
hooks/post-update* 
*git update-server-info*
A regular user cannot do it because he don't have login access to the git 
server.

I would like to know if there is a way to give a regular user to create a 
new repository alone, from his local workstation, 
without administrator help from the git server side?

Thanks,

-- 
You received this message because you are subscribed to the Google Groups Git 
for human beings group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.