repo-create.txtar

  1# vi: set ft=conf
  2
  3# convert crlf to lf on windows
  4[windows] dos2unix readme.md branch_list.1.txt info.txt
  5
  6# create a repo
  7soft repo create repo1 -d 'description' -H -p -n 'repo11'
  8soft repo hidden repo1
  9stdout true
 10soft repo private repo1
 11stdout true
 12! exists $DATA_PATH/repos/repo1.git/git-daemon-export-ok
 13soft repo description repo1
 14stdout 'description'
 15readfile $DATA_PATH/repos/repo1.git/description 'description'
 16soft repo project-name repo1
 17stdout 'repo1'
 18
 19# clone repo
 20git clone ssh://localhost:$SSH_PORT/repo1 repo1
 21
 22# create some files, commits, tags...
 23mkfile ./repo1/README.md '# Project\nfoo'
 24git -C repo1 add -A
 25git -C repo1 commit -m 'first'
 26git -C repo1 tag v0.1.0
 27git -C repo1 push origin HEAD
 28git -C repo1 push origin HEAD --tags
 29
 30# create lfs files, use ssh git-lfs-transfer
 31git -C repo1 lfs install --local
 32git -C repo1 lfs track '*.png'
 33git -C repo1 lfs track '*.mp4'
 34mkfile ./repo1/foo.png 'foo'
 35mkfile ./repo1/bar.png 'bar'
 36git -C repo1 add -A
 37git -C repo1 commit -m 'lfs'
 38git -C repo1 push origin HEAD
 39
 40# info
 41soft repo info repo1
 42cmp stdout info.txt
 43
 44# list tags
 45soft repo tag list repo1
 46stdout 'v0.1.0'
 47
 48# delete tag
 49soft repo tag delete repo1 v0.1.0
 50soft repo tag list repo1
 51! stdout .
 52
 53# print tree
 54soft repo tree repo1
 55cp stdout tree.txt
 56grep '.gitattributes' tree.txt
 57grep 'README.md' tree.txt
 58grep 'foo.png' tree.txt
 59grep 'bar.png' tree.txt
 60
 61# cat blob
 62soft repo blob repo1 README.md
 63cmp stdout readme.md
 64
 65# cat blob that doesn't exist
 66! soft repo blob repo1 README.txt
 67! stdout .
 68stderr '.*revision does not exist.*'
 69
 70# check main branch
 71soft repo branch default repo1
 72stdout master
 73
 74# create a new branch
 75git -C repo1 checkout -b branch1
 76git -C repo1 push origin branch1
 77soft repo branch list repo1
 78cmp stdout branch_list.1.txt
 79
 80# change default branch
 81soft repo branch default repo1 branch1
 82soft repo branch default repo1
 83stdout branch1
 84
 85# cannot delete main branch
 86! soft repo branch delete repo1 branch1
 87
 88# delete other branch
 89soft repo branch delete repo1 master
 90soft repo branch list repo1
 91stdout branch1
 92
 93-- readme.md --
 94# Project\nfoo
 95-- branch_list.1.txt --
 96branch1
 97master
 98-- info.txt --
 99Project Name: repo11
100Repository: repo1
101Description: description
102Private: true
103Hidden: true
104Mirror: false
105Default Branch: master
106Branches:
107  - master
108Tags:
109  - v0.1.0