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