X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=pep-git.txt;h=42cce324207616c312ffa2d4283ed5c1dcecaf30;hb=5a0fd8f0ab3191f27410de88e9e25d8d6b8b12c7;hp=15ca892eb375934a28d722172c334dcf889f398e;hpb=21c8d5852964d132f0608364b7e0546c7657338d;p=git-wiki.git diff --git a/pep-git.txt b/pep-git.txt index 15ca892..42cce32 100644 --- a/pep-git.txt +++ b/pep-git.txt @@ -199,9 +199,9 @@ and $ git fetch $REMOTE $BRANCH:$BRANCH The first command fetches commits from the named $BRANCH in the -$REMOTE repository that are not in your repository and leaves the id -(the hash) of the head commit in file .git/FETCH_HEAD and updates -remote-tracking branch. +$REMOTE repository that are not in your repository, updates +remote-tracking branch and leaves the id (the hash) of the head commit +in file .git/FETCH_HEAD. The second command fetches commits from the named $BRANCH in the $REMOTE repository that are not in your repository and updates both @@ -326,6 +326,11 @@ from it) you do that in two steps using two repositories: you push from the workstation to a bare repo on the remote host, ssh to the remote host and pull from the bare repo to a non-bare deployment repo. +That changed in git 2.3, but see `the blog post +`_ +for caveats; in 2.4 the push-to-deploy feature was `further improved +`_. + Tags '''' @@ -585,10 +590,29 @@ Git has a builtin merge strategy for what Python core developers call $ git merge -s ours v1 # null-merge v1 into v2 -ReReRe -====== +Advanced configuration +====================== -https://git-scm.com/book/en/Git-Tools-Rerere +Line endings +------------ + +Git has builtin mechanisms to handle line endings between platforms +with different EOL styles. To allow git to do CRLF conversion assign +``text`` attribute to files using `.gitattributes +`_. +For files that have to have specific line ending assign ``eol`` +attribute. For binary files the attribute is, naturally, ``binary``. + +For example:: + + $ cat .gitattributes + *.py text + *.txt text + *.png binary + /readme.txt eol=CRLF + +To check what attributes git uses for files use ``git check-attr`` +command. Advanced topics @@ -605,15 +629,10 @@ Staging area aka index is a distinguishing feature of git. See Wiki. -Advanced configuration -====================== - -Line endings ------------- - -Git has builtin mechanisms to handle line endings. +ReReRe +====== -TODO: describe crlf configuration and .gitattributes. +https://git-scm.com/book/en/Git-Tools-Rerere Database maintenance