fix bsd shell negation
[gitweb.git] / t / t5505-remote.sh
index ecfc999aaae728e3f57beaab60490abc53a3fb23..48ff2d424d1587bde388422da874feb3d55cbf0d 100755 (executable)
@@ -77,6 +77,16 @@ test_expect_success 'add another remote' '
 )
 '
 
+test_expect_success 'remote forces tracking branches' '
+(
+       cd test &&
+       case `git config remote.second.fetch` in
+       +*) true ;;
+        *) false ;;
+       esac
+)
+'
+
 test_expect_success 'remove remote' '
 (
        cd test &&
@@ -106,6 +116,8 @@ cat > test/expect << EOF
     master
   Tracked remote branches
     side master
+  Local branches pushed with 'git push'
+    master:upstream +refs/tags/lastbackup
 EOF
 
 test_expect_success 'show' '
@@ -118,6 +130,10 @@ test_expect_success 'show' '
          echo 1 > file &&
          test_tick &&
          git commit -m update file) &&
+        git config remote.origin.push \
+               refs/heads/master:refs/heads/upstream &&
+        git config --add remote.origin.push \
+               +refs/tags/lastbackup &&
         git remote show origin > output &&
         git diff expect output)
 '
@@ -237,4 +253,20 @@ test_expect_success 'update default (overridden, with funny whitespace)' '
 
 '
 
+test_expect_success '"remote show" does not show symbolic refs' '
+
+       git clone one three &&
+       (cd three &&
+        git remote show origin > output &&
+        ! grep HEAD < output &&
+        ! grep -i stale < output)
+
+'
+
+test_expect_success 'reject adding remote with an invalid name' '
+
+       ! git remote add some:url desired-name
+
+'
+
 test_done