Hi Yawar,

I'm more inclined to say everyone was right in their own way ;-)

My first part of the question was asking if the shell itself changed the 
character, and that was 'No', the dot character is passed to the executable. 
[this compares to say blob expansion where the shell does change the characters]

Then the second part was how did Git handle the dot, and if/where it was 
documented.

I did find part of the documentation hidden in git config as a special case for 
defining a remote, but the command line effect hadn't been noted. So I've 
submitted a documentation patch for comment to the main list.

regards
Philip
  ----- Original Message ----- 
  From: Yawar Amin 
  To: git-users@googlegroups.com 
  Cc: Philip Oakley 
  Sent: Thursday, May 23, 2013 2:43 AM
  Subject: [git-users] Re: proper meaning of '.' dot in a git command?


  Hi Philip,

  On Thursday, May 16, 2013 6:42:03 PM UTC-4, Philip Oakley wrote:
    Recently there have been a couple of example commands that have a single 
    dot '.' in the command line. 

    In this case what is its proper meaning, that is, is it expanded by the 
    bash shell, or by git it self, and what would its typical expanded 
    version look like if it is the current dicetory e.g. fully qualified 
    etc. ?


  I'm afraid none of the replies here have been correct. When used with 
fetch/push/pull, the dot means `this (the local) repository'.
As I understand it, if Git is decoding a parameter as if it is a remote then we 
get that expansion. (bit not if we are creating/naming a remote as it's not 
allowed in that direction)
    [...]
    On Sat, May 4, 2013 at 2:51 PM, Jonathan Nieder <jrni...@gmail.com> 
    wrote: 
    > Another trick is to use "git push": 
    >         git push . $production_sha1:refs/heads/master 


  This means push this repository's $production_sha1 to this (same) 
repository's master. This is a shortcut way of saying

  git checkout master
  git merge --ff-only $production_sha1
  git checkout $production_sha1

  Where $production_sha1 can be any branch, tag, or commit ID. Notice the 
`--ff-only', which forces $production_sha1 to be a descendant of master. 
Remember that this is how push behaves by default.
True
 
    [...]

    'git fetch .' 


  This means fetch all refs from this repo into this repo as remote refs. As 
you are probably thinking, this doesn't make much sense. So I think the git 
devs are discussing adding an option here to clarify the use cases:
   
True. Though often an extended discussion...

    in [PATCH 1/3] fetch: add --allow-local option, 


  Regards,

  Yawar

-- 
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.


Reply via email to