- remove dead code
[opensuse:osc.git] / README
1 osc -- opensuse-commander with svn like handling
2
3
4 Please send patches to poeml@suse.de, or work directly on
5 https://forgesvn1.novell.com/svn/opensuse/trunk/buildservice/src/clientlib/python/osc/
6
7
8 INSTALLATION:
9
10 RPM packages are here (yum repository):
11 http://software.opensuse.org/download/repositories/openSUSE:Tools/
12
13 To install from svn, do
14         python setup.py build
15         python setup.py install
16         # create a symlink 'osc' in your path pointing to osc.py.
17         ln -s osc-wrapper.py /usr/bin/osc
18
19 Alternatively, you can directly use osc-wrapper.py from the source dir
20
21
22 The program needs the cElementTree python module installed. On SUSE, the respective
23 package is called python-elementtree.
24
25
26
27
28 CONFIGURATION:
29
30 When you use it for the first time, it will ask you for your username and
31 password, and store it in ~/.oscrc.
32
33 If authentication data is found in .netrc, it will also be used.
34
35
36
37 USAGE EXAMPLES:
38
39 To list existing content on the server
40  osc ls                                 # list projects
41  osc ls Apache                  # list packages in a project 
42  osc ls Apache subversion       # list files of package of a project
43
44 Check out content
45  osc co Apache                  # entire project
46  osc co Apache subversion       # a package
47  osc co Apache subversion foo   # single file
48
49 Update a working copy
50  osc up
51  osc up [pac_dir]               # update a single package by its path
52  osc up *                       # from within a project dir, update all packages
53  osc up                         # from within a project dir, update all packages
54                                    AND check out all newly added packages
55
56 If an update can't be merged automatically, a file is in 'C' (conflict)
57 state, and conflicts are marked with special <<<<<<< and >>>>>>> lines. 
58 After manually resolving the problem, use
59  osc resolved foo
60
61 Upload change content
62  osc ci                         # current dir
63  osc ci <dir>
64  osc ci file1 file2 ...
65
66 Show the status (which files have been changed locally)
67  osc st
68  osc st <directory>
69  osc st file1 file2 ...
70
71 Mark files to be added or removed on the next 'checkin'
72  osc add file1 file2 ...
73  osc rm file1 file2 ...
74
75 Adds all new files in local copy and removes all disappeared files.
76  osc addremove
77
78 Generates a diff, to view the changes
79  osc diff                       # current dir
80  osc diff file1 file2 ...
81
82 Shows the build results of the package
83  osc results
84  osc results [platform]
85
86 Shows the log file of a package (you need to be inside a package directory)
87  osc log <platform> <arch>
88
89 Shows the URLs of .repo files which are packages sources for Yum/YaST/smart
90  osc repourls [dir]
91
92 Triggers a package rebuild for all repositories/architectures of a package
93  osc rebuildpac [dir]
94
95 Shows available platforms/build targets
96  osc platforms
97
98 Shows the configured platforms/build targets of a project
99  osc platforms <project>
100
101 Shows meta information
102  osc meta Apache
103  osc meta Apache subversion
104  osc id username
105
106 Edit meta information
107 (Creates new package/project if it doesn't exist)
108  osc editmeta Apache
109  osc editmeta Apache subversion
110
111 Update package meta data with metadata taken from spec file
112  osc updatepacmetafromspec <dir>
113
114
115
116 HINT FOR W3M USERS
117
118 Putting the following in the file ~/.w3m/passwd will make
119 w3m know the credentials for the buildservice servers:
120
121 """
122 host api.opensuse.org
123   port 80
124   realm Authentication required
125   login foo
126   password bar
127
128 host build.opensuse.org
129   port 80
130   realm openSUSE Build Service
131   login foo
132   password bar
133 """
134
135 chmod 0600 ~/.w3m/passwd