Kiln » TortoiseHg » TortoiseHg
Clone URL:  
Pushed to one repository · View In Graph Contained in 0.9, 0.9.1, and 0.9.1.1

merge with stable

Changeset f045d8894fbe

Parents ee4e27d92f01

Parents ab212f172fb0

by Steve Borho

Changes to 7 files · Browse files at f045d8894fbe Showing diff from parent ee4e27d92f01 ab212f172fb0 Diff from another changeset...

Added image
Added image
 
6
7
8
9
 
10
11
12
 
56
57
58
 
59
60
61
 
63
64
65
 
 
 
 
66
67
68
 
106
107
108
109
 
 
110
111
112
 
119
120
121
122
 
 
123
124
125
 
139
140
141
142
 
 
143
144
145
 
160
161
162
163
164
165
166
167
168
169
170
171
172
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
173
174
175
 
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
 
6
7
8
 
9
10
11
12
 
56
57
58
59
60
61
62
 
64
65
66
67
68
69
70
71
72
73
 
111
112
113
 
114
115
116
117
118
 
125
126
127
 
128
129
130
131
132
 
146
147
148
 
149
150
151
152
153
 
168
169
170
 
 
171
172
173
 
 
 
 
 
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
 
197
198
199
 
 
 
 
 
 
 
 
 
 
200
201
202
@@ -6,7 +6,7 @@
  :synopsis: A Gentle Introduction to Using TortoiseHg on Windows    One of the great things about Mercurial is that there are lots of different -`Collaboration Models <http://hgbook.red-bean.com/read/file-names-and-pattern-matching.html>`_. +`Collaboration Models <http://hgbook.red-bean.com/read/collaborating-with-other-people.html>`_.  The following describes just one of those ways: a single central repository.    To get started, suppose you volunteer to create the first version. There are @@ -56,6 +56,7 @@
 We suggest to keep checked :guilabel:`Add special files (.hgignore, ...)`  and do not check :guilabel:`Make repo compatible with Mercurial 1.0`  (unless you have a strong reason to do this). +  After pressing :guilabel:`Create` Mercurial places a  subdirectory in your folder called :file:`.hg`. This is where it keeps  all its versioning information. It is called the *repository*, and the @@ -63,6 +64,10 @@
 You never specify the :file:`.hg` directory. It is mentioned here just  so you'll better understand how Mercurial is working.   +.. warning:: + Never touch the files in :file:`.hg` directory, otherwise a repository + corruption can happen. +  Add files  =========   @@ -106,7 +111,8 @@
 (the message or the selected files) you can cancel the last commit using the  :guilabel:`Undo` button.   -.. {{images/image001.png}} +.. figure:: figures/commit.png + :alt: Commit dialog    Share the repository  ==================== @@ -119,7 +125,8 @@
 :menuselection:`TortoiseHg --> Clone a Repository`, or  :command:`hgtk clone` from command line.   -.. {{images/image003.gif}} +.. figure:: figures/share.png + :alt: Clone dialog    When you create a clone for *central repository* purpose there is no  reason to have here an updated working directory. Check @@ -139,7 +146,8 @@
 :menuselection:`TortoiseHg --> Clone a Repository`, or  :command:`hgtk clone` from command line (exactly as share the repository).   -.. {{images/Clone.gif}} +.. figure:: figures/clone.png + :alt: Clone dialog    This time you want to update the working directory because you want to  work on the project, uncheck :guilabel:`do not update the new working directory` @@ -160,16 +168,24 @@
 visual difference tool (kdiff). You may commit many times before  synchronizing with the group repository.   -.. figure:: figures/commit.png - :alt: Commit dialog    When you're ready to publish your changes, you   -1. commit your changes to your local repository, if you haven't already. -2. pull changes from the group repository into your repository -3. merge and commit into your local repository -4. make sure your work still builds and passes your extensive test suite -5. push your changes to the group repository. +1. commit your changes to your local repository, if you haven't already + (see above). +2. pull changes from the group repository into your repository, + :menuselection:`TortoiseHg --> Synchronize` or + :command:`hgtk synch`, choose the source path to group repository + and then :guilabel:`Pull`. +3. if some changesets are pulled, merge then and commit into your local + repository. From the changelog viewer (:menuselection:`TortoiseHg --> View Changelog` + or :command:`hgtk log`) open the context menu over the changeset which + you want to merge with and select :guilabel:`merge with`. Finally, in the + merge dialog, press :guilabel:`Merge` and then :guilabel:`Commit`. +4. make sure your work still builds and passes your extensive test suite. +5. push your changes to the group repository, :menuselection:`TortoiseHg --> Synchronize` + or :command:`hgtk synch`, choose the source path to group repository + and then :guilabel:`Push`.    Which may sound complicated, but it is just pushing the buttons on the  synchronize tool. @@ -181,16 +197,6 @@
 .. figure:: figures/synchronize.png   :alt: Synchronize dialog   - -:guilabel:`Incoming` - show me what changes in the group repository that are not in my repository -:guilabel:`Pull` - bring them on over and start merging -:guilabel:`Outgoing` - show me what is different in my repository compared to the group repository. -:guilabel:`Push` - make my changes the current changeset (tip) in the group repository. -  Mercurial makes collaboration easy, fast, and productive.  Learn more at Mercurial's `wiki <http://mercurial.selenic.com/wiki/>`_.  
 
14
15
16
17
 
 
18
19
20
21
 
 
22
23
 
 
24
25
26
 
14
15
16
 
17
18
19
20
21
 
22
23
24
 
25
26
27
28
29
@@ -14,13 +14,16 @@
 or optionally to email recipients.    :guilabel:`Incoming` - show changesets that would be pulled from target repository + show changesets that would be pulled from target repository, the changes + in the target repository that are not in local repository  :guilabel:`Pull`   pull incoming changesets from target repository  :guilabel:`Outgoing` - show changesets that would be pushed to target repository + show changesets that would be pushed to target repository, the changes + in the local repository that are not in target repository  :guilabel:`Push` - push outgoing changesets to target repository + push outgoing changesets to target repository, make the local *tip* + the new *tip* in the target repository  :guilabel:`Email`   send outgoing changesets (to target repository) as email  :guilabel:`Stop`
Change 1 of 2 Show Entire File hggtk/​hgtk.py Stacked
 
649
650
651
652
 
653
654
655
 
677
678
679
680
 
681
682
683
 
649
650
651
 
652
653
654
655
 
677
678
679
 
680
681
682
683
@@ -649,7 +649,7 @@
  [('l', 'limit', '', _('limit number of changes displayed'))],   _('hgtk log [OPTIONS] [FILE]')),   "^merge": (merge, - [('r', 'rev', '', _('revision to update'))], + [('r', 'rev', None, _('revision to merge with'))],   _('hgtk merge')),   "^recovery|rollback|verify": (recovery, [], _('hgtk recovery')),   "^shelve|unshelve": (shelve, [], _('hgtk shelve')), @@ -677,7 +677,7 @@
  ('', 'all', None, _('udpate all repos in current dir')) ],   _('hgtk thgstatus [OPTION]')),   "^update|checkout|co": (update, - [('r', 'rev', '', _('revision to update'))], + [('r', 'rev', None, _('revision to update'))],   ('hgtk update')),   "^vdiff": (vdiff,   [('c', 'change', '', _('changeset to view in diff tool')),
Change 1 of 1 Show Entire File hggtk/​update.py Stacked
 
50
51
52
53
 
54
55
56
 
50
51
52
 
53
54
55
56
@@ -50,7 +50,7 @@
  combo = gtk.combo_box_entry_new_text()   hbox.pack_start(combo, True, True, 2)   vbox.pack_start(hbox, False, False, 10) - if rev: + if rev != None:   combo.append_text(str(rev))   else:   combo.append_text(_branch_tip_)
 
517
518
519
 
520
 
 
 
 
521
522
523
 
517
518
519
520
521
522
523
524
525
526
527
528
@@ -517,7 +517,12 @@
  }   else if (uFlags == GCS_VERBW || uFlags == GCS_VERBA)   { +#if 0   psz = iter->second.name.c_str(); +#else + // bugfix: don't provide verbs ("rename" conflicted with rename of explorer) + psz = ""; +#endif   res = S_OK;   }   else if (uFlags == GCS_VALIDATEW || uFlags == GCS_VALIDATEA)