2 # Persian (Farsi) translation for TortoiseGit
3 # Copyright (C) 2004-2008 the TortoiseGit team
4 # This file is distributed under the same license as TortoiseGit
8 # $Date: 2009-01-08 17:19:56 +0800 (Thu, 08 Jan 2009) $
12 # Sayyed Mohsen Sajjadi Tabasi
16 "Project-Id-Version: TortoiseGit Documentation\n"
17 "POT-Creation-Date: 2008-05-30 19:02 +0000\n"
18 "PO-Revision-Date: 2008-07-08 22:59+0330\n"
19 "Last-Translator: mohsen sajjadi <mohsensajjadi@yahoo.com>\n"
20 "Language-Team: TortoiseGit translation team <<tortoisegit-dev@googlegroups.com >>\n"
22 "Content-Type: text/plain; charset=utf-8\n"
23 "Content-Transfer-Encoding: 8bit\n"
24 "X-Poedit-Country: IRAN\n"
25 "X-Poedit-Language: Persian\n"
29 #: ../source/TortoiseGit_en.xml:4
30 #: ../source/TortoiseGit_en.xml:3023
35 #: ../source/TortoiseGit_en.xml:5
36 msgid "A Git client for Windows"
37 msgstr "یک ابزار سرویس گیرنده سابورژن برای ویندوز"
39 #. TRANSLATORS: "$MajorVersion$.$MinorVersion$.$MicroVersion$" is a literal value and should not be translated
41 #: ../source/TortoiseGit_en.xml:6
42 msgid "Version $MajorVersion$.$MinorVersion$.$MicroVersion$"
43 msgstr "نسخه $MajorVersion$.$MinorVersion$.$MicroVersion$"
46 #: ../source/TortoiseGit_en.xml:8
51 #: ../source/TortoiseGit_en.xml:11
56 #: ../source/TortoiseGit_en.xml:12
61 #: ../source/TortoiseGit_en.xml:15
66 #: ../source/TortoiseGit_en.xml:16
71 #: ../source/TortoiseGit_en.xml:19
76 #: ../source/TortoiseGit_en.xml:20
81 #: ../source/TortoiseGit_en.xml:27
86 #: ../source/TortoiseGit_en.xml:35
87 msgid "Do you work in a team?"
88 msgstr "آیا شما در یک تیم کار میکنید؟"
91 #: ../source/TortoiseGit_en.xml:40
92 msgid "Has it ever happened that you were working on a file, and someone else was working on the same file at the same time? Did you lose your changes to that file because of that?"
93 msgstr "آیا برای شما اتفاق افتاده که روی یک فایل کار میکنید، و شخص دیگری نیز همزمان روی این فایل کار کرده است؟ آیا باعث شده تغییراتتان را بدین دلیل از دست بدهید؟"
96 #: ../source/TortoiseGit_en.xml:47
97 msgid "Have you ever saved a file, and then wanted to revert the changes you made? Have you ever wished you could see what a file looked like some time ago?"
98 msgstr "آیا هرگز اتفاق افتاده فایلی زا ذخیره کنید و سپس نیاز به بازگشت دادن تغییرات داشته باشید؟ آیا هرگز آرزو کرده اید ببینید یک فایل مدتی قبل چه شکلی بوده؟"
101 #: ../source/TortoiseGit_en.xml:54
102 msgid "Have you ever found a bug in your project and wanted to know when that bug got into your files?"
103 msgstr "آیا یک اشکال در پروژه خود پیدا کرده اید و خواسته اید بدانید این اشکل چه زمان و توسط چه کسی وارد سیستم شده است؟"
106 #: ../source/TortoiseGit_en.xml:61
107 msgid "If you answered <quote>yes</quote> to one of these questions, then TortoiseGit is for you! Just read on to find out how TortoiseGit can help you in your work. It's not that difficult."
108 msgstr "اگر به یکی از این سئوالات پاسخ <quote>مثبت</quote> داده باشید، بنابراین TortoiseGit برای شماست! برای اینکه بدانید TortoiseGit چگونه میتواند به شما کمک کند ادامه این کتاب را بخوانید. خیلی هم سخت نیست."
111 #: ../source/TortoiseGit_en.xml:71
116 #: ../source/TortoiseGit_en.xml:72
117 msgid "This book is written for computer literate folk who want to use Git to manage their data, but are uncomfortable using the command line client to do so. Since TortoiseGit is a windows shell extension it's assumed that the user is familiar with the windows explorer and knows how to use it."
118 msgstr "این کتاب برای افراد باسواد کامپیوتر که میخواهند از سابورژن برای مدیریت اطلاعاتشان استفاده کنند، ولی با نسخه خط فرمانی آن راحت نیستند، نوشته شده است. از آنجا که TortoiseGit یک توسعه پوسته ویندوز است، ما فرض میکنیم کاربران با ویندوز اکسپلورر آشنا بوده و نحوه کار با آن را میدانند."
121 #: ../source/TortoiseGit_en.xml:84
122 msgid "Reading Guide"
123 msgstr "راهنمای مطالعه"
126 #: ../source/TortoiseGit_en.xml:85
127 msgid "This <xref linkend=\"tsvn-preface\"/> explains a little about the TortoiseGit project, the community of people who work on it, and the licensing conditions for using it and distributing it."
128 msgstr "در <xref linkend=\"tsvn-preface\"/> اندکی در مورد پروژه TortoiseGit، جامعه افرادی که روی آن کار میکنند، و شرائط مجوز ها برای استفاده و توزیع آن توضیح داده میشود."
131 #: ../source/TortoiseGit_en.xml:90
132 msgid "The <xref linkend=\"tsvn-introduction\"/> explains what TortoiseGit is, what it does, where it comes from and the basics for installing it on your PC."
133 msgstr "<xref linkend=\"tsvn-introduction\"/> توضیح میدهد که TortoiseGit چیست، چکار میکند، از کجا آمده و به کجا میرود، و روش نصب آن بر روی سیستم شما چگونه است."
136 #: ../source/TortoiseGit_en.xml:95
137 msgid "In <xref linkend=\"tsvn-basics\"/> we give a short introduction to the <emphasis>Git</emphasis> revision control system which underlies TortoiseGit. This is borrowed from the documentation for the Git project and explains the different approaches to version control, and how Git works."
138 msgstr "در <xref linkend=\"tsvn-basics\"/> مقدمه ای بر <emphasis>سابورژن</emphasis> سیستم مدیریت ویرایش در پشت TortoiseGit را خواهیم داشت. این بخش از مستندات سابورژن قرض گرفته شده و روشهای مختلف انجام کنترل ویرایشها و نحوه کار سابورژن را توضیح میدهد."
141 #: ../source/TortoiseGit_en.xml:102
142 msgid "Even most Git users will never have to set up a server themselves. The next chapter deals with how to set up such a server, and is useful for administrators."
143 msgstr "بیشتر کاربران سابورژن هرگز نیاز به راه اندازی یک سرور برای خود نخواهند داشت. بخش بعد به نحوه راه اندازی چنین سروری میپردازد و برای مدیران سیستم مناسب میباشد."
146 #: ../source/TortoiseGit_en.xml:107
147 msgid "The chapter on <xref linkend=\"tsvn-repository\"/> explains how to set up a local repository, which is useful for testing Git and TortoiseGit using a single PC. It also explains a bit about repository administration which is also relevant to repositories located on a server."
148 msgstr "بخش مربوط به <xref linkend=\"tsvn-repository\"/> نحوه راه اندازی یک مخزن محلی را توضیح میدهد، و برای آزمایش سابورژن و TortoiseGit روی یک سیستم کاربرد دارد.. همچنین در مورد مدیریت یک مخزن روی یک سرویس دهنده نیز توضیحاتی ارائه خواهد شد."
151 #: ../source/TortoiseGit_en.xml:113
152 msgid "The <xref linkend=\"tsvn-dug\"/> is the most important section as it explains all the main features of TortoiseGit and how to use them. It takes the form of a tutorial, starting with checking out a working copy, modifying it, committing your changes, etc. It then progresses to more advanced topics."
153 msgstr "بخش <xref linkend=\"tsvn-dug\"/> مهمترین بخش است و تمامی امکانات TortoiseGit و نحوه استفاده از آنها را توضیح میدهد. این بخش با نحوه دریافت یک نسخه کاری، تغییر آن، اعمال تعییرات و ... شما را آشنا میکند. سپس وارد مباحث پیشرفته تر خواهیم شد."
156 #: ../source/TortoiseGit_en.xml:120
157 msgid "<xref linkend=\"tsvn-subwcrev\"/> is a separate program included with TortoiseGit which can extract the information from your working copy and write it into a file. This is useful for including build information in your projects."
158 msgstr "<xref linkend=\"tsvn-subwcrev\"/> یک برنامه مجزاست که بهمراه TortoiseGit توزیع میشود و امکان استخراج اطلاعات از نسخه کاری و نوشتن آنها در یک فایل را دارد. از این برنامه برای قرار دارن اطلاعاتی مربوط به نسخه ساخته شده پروژه خود میتوانید استفاده کنید."
161 #: ../source/TortoiseGit_en.xml:125
162 msgid "The <xref linkend=\"tsvn-howto\"/> section answers some common questions about performing tasks which are not explicitly covered elsewhere."
163 msgstr "بخش <xref linkend=\"tsvn-howto\"/> سئوالاتی را در مورد انجام برخی عملیات روز مره که در جای دیگر به آنها اشاره نشده است پاسخ می دهد."
166 #: ../source/TortoiseGit_en.xml:129
167 msgid "The section on <xref linkend=\"tsvn-automation\"/> shows how the TortoiseGit GUI dialogs can be called from the command line. This is useful for scripting where you still need user interaction."
168 msgstr "بخش <xref linkend=\"tsvn-automation\"/> نشان میدهد چگونه میتوانید پنجره های محاوره ای TortoiseGit را از خط دستور فراخوانی کنید. این ویژگی برای اسکریپتهائی که نیاز به محاوره با کاربر نیز دارند مناسب است."
171 #: ../source/TortoiseGit_en.xml:134
172 msgid "The <xref linkend=\"tsvn-cli\"/> give a correlation between TortoiseGit commands and their equivalents in the Git command line client <literal>svn.exe</literal>."
173 msgstr "در <xref linkend=\"tsvn-cli\"/> درباره ارتباط بین دستورات TortoiseGit و معادل آنها در <literal>svn.exe</literal> که سرویس گیرنده خط دستوری سابورژن است توضیحاتی ارائه میشود."
176 #: ../source/TortoiseGit_en.xml:144
177 msgid "TortoiseGit is free!"
178 msgstr "TortoiseGit رایگان است!"
181 #: ../source/TortoiseGit_en.xml:145
182 msgid "TortoiseGit is free. You don't have to pay to use it, and you can use it any way you want. It is developed under the GNU General Public License (GPL)."
183 msgstr "TortoiseGit رایگان است. شما برای استفاده از آن پولی پرداخت نمی کنید، و هر گونه که بخواهید میتوانید از آن بهره ببرید. این برنامه تحت مجوز GPL توسعه یافته است."
186 #: ../source/TortoiseGit_en.xml:149
187 msgid "TortoiseGit is an Open Source project. That means you have full access to the source code of this program. You can browse it on this link <ulink url=\"http://TortoiseGit.tigris.org/svn/TortoiseGit/\"><citetitle>http://TortoiseGit.tigris.org/svn/TortoiseGit/</citetitle></ulink>. (Username:guest, for password hit enter) The most recent version (where we're currently working) is located under <filename>/trunk/</filename> the released versions are located under <filename>/tags/</filename>."
188 msgstr "TortoiseGit یک پروژه متن باز است.. شما به تمامی کد منبع این برنامه دسترسی دارید. میتوانید از این لینک <ulink url=\"http://TortoiseGit.tigris.org/svn/TortoiseGit/\"> کد آن را مرور کنید.<citetitle>http://TortoiseGit.tigris.org/svn/TortoiseGit/</citetitle></ulink>. (نام کاربر:guest, رمزینه را خالی بگذارید) جدیدتربن نسخه که روی آن کار میشود در <filename>/trunk/</filename> قرار دارد نسخه های منتشر شده در <filename>/tags/</filename> قرار دارند."
191 #: ../source/TortoiseGit_en.xml:168
196 #: ../source/TortoiseGit_en.xml:169
197 msgid "Both TortoiseGit and Git are developed by a community of people who are working on those projects. They come from different countries all over the world and joined together to create wonderful programs."
198 msgstr "هردو برنامه TortoiseGit و سابورژن توسط جامعه ای از افراد که روی این پروژه ها کار میکنند توسعه داده می شوند. این افراد اهل کشورهای مختلف هستند و برای ایجاد برنامه های جذاب دست به دست هم داده اند."
201 #: ../source/TortoiseGit_en.xml:180
202 msgid "Acknowledgments"
206 #: ../source/TortoiseGit_en.xml:183
211 #: ../source/TortoiseGit_en.xml:185
212 msgid "for founding the TortoiseGit project"
213 msgstr "برای ایجاد پروژه TortoiseGit"
216 #: ../source/TortoiseGit_en.xml:191
221 #: ../source/TortoiseGit_en.xml:193
222 msgid "for the hard work to get TortoiseGit to what it is now"
223 msgstr "برای کوشش سخت در رساندن TortoiseGit به آنچه امروز هست"
226 #: ../source/TortoiseGit_en.xml:199
231 #: ../source/TortoiseGit_en.xml:201
232 msgid "for the beautiful icons, logo, bug hunting, translating and managing the translations"
233 msgstr "برای آیکونهای زیبا، لوگو، رفع ایراد، ترجمه و مدیریت فعالیتها در جهت ترجمه به زیانهای مختلف"
236 #: ../source/TortoiseGit_en.xml:208
241 #: ../source/TortoiseGit_en.xml:210
242 msgid "for helping with the documentation and bug hunting"
243 msgstr "برای کمک در مستند سازی و رفع ابرادات"
246 #: ../source/TortoiseGit_en.xml:216
248 msgstr "کتاب سابورژن"
251 #: ../source/TortoiseGit_en.xml:218
252 msgid "for the great introduction to Git and its chapter 2 which we copied here"
253 msgstr "برای مقدمه عالی سابورژن و فصل 2 آن که ما در اینجا آنرا کپی برداری کرده ایم"
256 #: ../source/TortoiseGit_en.xml:225
257 msgid "The Tigris Style project"
258 msgstr "پروژه استایل تیگریس"
261 #: ../source/TortoiseGit_en.xml:227
262 msgid "for some of the styles which are reused in this documentation"
266 #: ../source/TortoiseGit_en.xml:233
267 msgid "Our Contributors"
271 #: ../source/TortoiseGit_en.xml:235
272 msgid "for the patches, bug reports and new ideas, and for helping others by answering questions on our mailing list."
276 #: ../source/TortoiseGit_en.xml:242
278 msgstr "اهدا کنندگان"
281 #: ../source/TortoiseGit_en.xml:244
282 msgid "for many hours of joy with the music they sent us"
283 msgstr "برای ساعتها خوشی و موسیقی های زیبای ارسالی آنها"
286 #: ../source/TortoiseGit_en.xml:255
287 msgid "Terminology used in this document"
288 msgstr "اصطلاحات استفاده شده در این مستند"
291 #: ../source/TortoiseGit_en.xml:256
292 msgid "To make reading the docs easier, the names of all the screens and Menus from TortoiseGit are marked up in a different font. The <guilabel>Log Dialog</guilabel> for instance."
296 #: ../source/TortoiseGit_en.xml:261
297 msgid "A menu choice is indicated with an arrow. <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Show Log</guimenuitem></menuchoice> means: select <emphasis>Show Log</emphasis> from the <emphasis>TortoiseGit</emphasis> context menu."
301 #: ../source/TortoiseGit_en.xml:270
302 msgid "Where a local context menu appears within one of the TortoiseGit dialogs, it is shown like this: <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Save As ...</guimenuitem></menuchoice>"
306 #: ../source/TortoiseGit_en.xml:278
307 msgid "User Interface Buttons are indicated like this: Press <guibutton>OK</guibutton> to continue."
311 #: ../source/TortoiseGit_en.xml:282
312 msgid "User Actions are indicated using a bold font. <keycap>ALT+A</keycap>: press the <keycap>ALT</keycap>-Key on your keyboard and while holding it down press the <keycap>A</keycap>-Key as well. <action>Right-drag</action>: press the right mouse button and while holding it down <emphasis>drag</emphasis> the items to the new location."
316 #: ../source/TortoiseGit_en.xml:290
317 msgid "System output and keyboard input is indicated with a <literal>different</literal> font as well."
321 #: ../source/TortoiseGit_en.xml:295
322 msgid "Important notes are marked with an icon."
326 #: ../source/TortoiseGit_en.xml:300
327 msgid "Tips that make your life easier."
331 #: ../source/TortoiseGit_en.xml:305
332 msgid "Places where you have to be careful what you are doing."
336 #: ../source/TortoiseGit_en.xml:310
337 msgid "Where extreme care has to be taken, data corruption or other nasty things may occur if these warnings are ignored."
343 #: ../source/TortoiseGit_en.xml:319
344 #: ../source/TortoiseGit_en.xml:1482
345 #: ../source/TortoiseGit_en.xml:2482
350 #: ../source/TortoiseGit_en.xml:322
351 msgid "version control"
352 msgstr "کنترل ویرایش"
355 #: ../source/TortoiseGit_en.xml:325
356 msgid "Version control is the art of managing changes to information. It has long been a critical tool for programmers, who typically spend their time making small changes to software and then undoing or checking some of those changes the next day. Imagine a team of such developers working concurrently - and perhaps even simultaneously on the very same files! - and you can see why a good system is needed to <emphasis>manage the potential chaos</emphasis>."
357 msgstr "مدیریت نسخ عبارت است از هنر مدیریت تغییرات به اطلاعات. از گذشته ابزاری حیاتی برای برنامه نویسانی که تغییرات کوچک به نزم افزار می دهند و روز بعد این تغییرات را بازکشت داده و بررسی می کنند. تیمی ازاین توسعه دهندگان را در نظر بگیرید که بطور موازی کار می کنند - و حتی شاید بطور همزمان روی یک فایل کار می کنند! - و متوجه خواهید شد که چرا به یک سیستم خوب و قابل اطمینان جهت <emphasis>جلوگیری از یک فاجعه</emphasis> نیاز است."
360 #: ../source/TortoiseGit_en.xml:339
361 msgid "What is TortoiseGit?"
365 #: ../source/TortoiseGit_en.xml:340
366 msgid "TortoiseGit is a free open-source client for the <firstterm>Git</firstterm> version control system. That is, TortoiseGit manages files and directories over time. Files are stored in a central <firstterm>repository</firstterm>. The repository is much like an ordinary file server, except that it remembers every change ever made to your files and directories. This allows you to recover older versions of your files and examine the history of how and when your data changed, and who changed it. This is why many people think of Git and version control systems in general as a sort of <quote>time machine</quote>."
370 #: ../source/TortoiseGit_en.xml:352
371 msgid "Some version control systems are also software configuration management (SCM) systems. These systems are specifically tailored to manage trees of source code, and have many features that are specific to software development - such as natively understanding programming languages, or supplying tools for building software. Git, however, is not one of these systems; it is a general system that can be used to manage <emphasis>any</emphasis> collection of files, including source code."
375 #: ../source/TortoiseGit_en.xml:368
376 msgid "TortoiseGit's History"
377 msgstr "تاریخچه TortoiseGit"
380 #: ../source/TortoiseGit_en.xml:369
381 msgid "In 2002, Tim Kemp found that Git was a very good version control system, but it lacked a good GUI client. The idea for a Git client as a Windows shell integration was inspired by the similar client for CVS named TortoiseCVS."
385 #: ../source/TortoiseGit_en.xml:375
386 msgid "Tim studied the source code of TortoiseCVS and used it as a base for TortoiseGit. He then started the project, registered the domain <literal>TortoiseGit.org</literal> and put the source code online. During that time, Stefan Küng was looking for a good and free version control system and found Git and the source for TortoiseGit. Since TortoiseGit was still not ready for use then he joined the project and started programming. Soon he rewrote most of the existing code and started adding commands and features, up to a point where nothing of the original code remained."
390 #: ../source/TortoiseGit_en.xml:386
391 msgid "As Git became more stable it attracted more and more users who also started using TortoiseGit as their Git client. The user base grew quickly (and is still growing every day). That's when Lübbe Onken offered to help out with some nice icons and a logo for TortoiseGit. And he takes care of the website and manages the translation."
395 #: ../source/TortoiseGit_en.xml:399
396 msgid "TortoiseGit's Features"
400 #: ../source/TortoiseGit_en.xml:400
401 msgid "What makes TortoiseGit such a good Git client? Here's a short list of features."
405 #: ../source/TortoiseGit_en.xml:406
406 msgid "Shell integration"
410 #: ../source/TortoiseGit_en.xml:409
411 msgid "Windows shell"
415 #: ../source/TortoiseGit_en.xml:412
420 #: ../source/TortoiseGit_en.xml:414
421 msgid "TortoiseGit integrates seamlessly into the Windows shell (i.e. the explorer). This means you can keep working with the tools you're already familiar with. And you do not have to change into a different application each time you need functions of the version control!"
425 #: ../source/TortoiseGit_en.xml:421
426 msgid "And you are not even forced to use the Windows Explorer. TortoiseGit's context menus work in many other file managers, and in the File/Open dialog which is common to most standard Windows applications. You should, however, bear in mind that TortoiseGit is intentionally developed as extension for the Windows Explorer. Thus it is possible that in other applications the integration is not as complete and e.g. the icon overlays may not be shown."
430 #: ../source/TortoiseGit_en.xml:435
431 msgid "Icon overlays"
435 #: ../source/TortoiseGit_en.xml:437
436 msgid "The status of every versioned file and folder is indicated by small overlay icons. That way you can see right away what the status of your working copy is."
440 #: ../source/TortoiseGit_en.xml:445
441 msgid "Easy access to Git commands"
445 #: ../source/TortoiseGit_en.xml:447
446 msgid "All Git commands are available from the explorer context menu. TortoiseGit adds its own submenu there."
450 #: ../source/TortoiseGit_en.xml:454
451 msgid "Since TortoiseGit is a Git client, we would also like to show you some of the features of Git itself:"
455 #: ../source/TortoiseGit_en.xml:460
456 msgid "Directory versioning"
460 #: ../source/TortoiseGit_en.xml:462
461 msgid "CVS only tracks the history of individual files, but Git implements a <quote>virtual</quote> versioned filesystem that tracks changes to whole directory trees over time. Files <emphasis>and</emphasis> directories are versioned. As a result, there are real client-side <command>move</command> and <command>copy</command> commands that operate on files and directories."
465 #: ../source/TortoiseGit_en.xml:475
466 msgid "Atomic commits"
470 #: ../source/TortoiseGit_en.xml:477
471 msgid "A commit either goes into the repository completely, or not at all. This allows developers to construct and commit changes as logical chunks."
475 #: ../source/TortoiseGit_en.xml:485
476 msgid "Versioned metadata"
480 #: ../source/TortoiseGit_en.xml:487
481 msgid "Each file and directory has an invisible set of <quote>properties</quote> attached. You can invent and store any arbitrary key/value pairs you wish. Properties are versioned over time, just like file contents."
485 #: ../source/TortoiseGit_en.xml:497
486 msgid "Choice of network layers"
490 #: ../source/TortoiseGit_en.xml:499
491 msgid "Git has an abstracted notion of repository access, making it easy for people to implement new network mechanisms. Git's <quote>advanced</quote> network server is a module for the Apache web server, which speaks a variant of HTTP called WebDAV/DeltaV. This gives Git a big advantage in stability and interoperability, and provides various key features for free: authentication, authorization, wire compression, and repository browsing, for example. A smaller, standalone Git server process is also available. This server speaks a custom protocol which can be easily tunneled over ssh."
495 #: ../source/TortoiseGit_en.xml:516
496 msgid "Consistent data handling"
500 #: ../source/TortoiseGit_en.xml:518
501 msgid "Git expresses file differences using a binary differencing algorithm, which works identically on both text (human-readable) and binary (human-unreadable) files. Both types of files are stored equally compressed in the repository, and differences are transmitted in both directions across the network."
505 #: ../source/TortoiseGit_en.xml:529
506 msgid "Efficient branching and tagging"
510 #: ../source/TortoiseGit_en.xml:531
511 msgid "The cost of branching and tagging need not be proportional to the project size. Git creates branches and tags by simply copying the project, using a mechanism similar to a hard-link. Thus these operations take only a very small, constant amount of time, and very little space in the repository."
515 #: ../source/TortoiseGit_en.xml:542
520 #: ../source/TortoiseGit_en.xml:544
521 msgid "Git has no historical baggage; it is implemented as a collection of shared C libraries with well-defined APIs. This makes Git extremely maintainable and usable by other applications and languages."
525 #: ../source/TortoiseGit_en.xml:558
526 msgid "Installing TortoiseGit"
530 #: ../source/TortoiseGit_en.xml:560
531 msgid "System requirements"
535 #: ../source/TortoiseGit_en.xml:561
536 msgid "TortoiseGit runs on Windows 2000 SP2, Windows XP or higher. Windows 98, Windows ME and Windows NT4 are no longer supported since TortoiseGit 1.2.0, but you can still download the older versions if you really need them."
540 #: ../source/TortoiseGit_en.xml:567
541 msgid "If you encounter any problems during or after installing TortoiseGit please refer to <xref linkend=\"tsvn-faq\"/> first."
545 #: ../source/TortoiseGit_en.xml:575
550 #: ../source/TortoiseGit_en.xml:577
555 #: ../source/TortoiseGit_en.xml:579
556 msgid "TortoiseGit comes with an easy to use installer. Double click on the installer file and follow the instructions. The installer will take care of the rest."
560 #: ../source/TortoiseGit_en.xml:585
561 msgid "You need Administrator privileges to install TortoiseGit."
565 #: ../source/TortoiseGit_en.xml:591
566 msgid "Language Packs"
570 #: ../source/TortoiseGit_en.xml:593
571 msgid "language packs"
575 #: ../source/TortoiseGit_en.xml:596
580 #: ../source/TortoiseGit_en.xml:598
581 msgid "The TortoiseGit user interface has been translated into many different languages, so you may be able to download a language pack to suit your needs. You can find the language packs on our <ulink url=\"http://TortoiseGit.net/translation_status\"><citetitle>translation status page</citetitle></ulink>. And if there is no language pack available yet, why not join the team and submit your own translation ;-)"
585 #: ../source/TortoiseGit_en.xml:609
586 msgid "Each language pack is packaged as a <literal>.exe</literal> installer. Just run the install program and follow the instructions. Next time you restart, the translation will be available."
590 #: ../source/TortoiseGit_en.xml:616
595 #: ../source/TortoiseGit_en.xml:618
600 #: ../source/TortoiseGit_en.xml:621
605 #: ../source/TortoiseGit_en.xml:623
606 msgid "TortoiseGit includes a spell checker which allows you to check your commit log messages. This is especially useful if the project language is not your native language. The spell checker uses the same dictionary files as <ulink url=\"http://openoffice.org\"><citetitle>OpenOffice</citetitle></ulink> and <ulink url=\"http://mozilla.org\"><citetitle>Mozilla</citetitle></ulink>."
610 #: ../source/TortoiseGit_en.xml:636
611 msgid "The installer automatically adds the US and UK English dictionaries. If you want other languages, the easiest option is simply to install one of TortoiseGit's language packs. This will install the appropriate dictionary files as well as the TortoiseGit local user interface. Next time you restart, the dictionary will be available too."
615 #: ../source/TortoiseGit_en.xml:644
616 msgid "Or you can install the dictionaries yourself. If you have OpenOffice or Mozilla installed, you can copy those dictionaries, which are located in the installation folders for those applications. Otherwise, you need to download the required dictionary files from <ulink url=\"http://wiki.services.openoffice.org/wiki/Dictionaries\"><citetitle>http://wiki.services.openoffice.org/wiki/Dictionaries</citetitle></ulink>"
620 #: ../source/TortoiseGit_en.xml:661
625 #: ../source/TortoiseGit_en.xml:666
630 #: ../source/TortoiseGit_en.xml:653
631 msgid "Once you have got the dictionary files, you probably need to rename them so that the filenames only have the locale chars in it. Example: <placeholder-1/> Then just copy them to the <filename>bin</filename> sub-folder of the TortoiseGit installation folder. Normally this will be <filename>C:\\Program Files\\TortoiseGit\\bin</filename>. If you don't want to litter the <filename>bin</filename> sub-folder, you can instead place your spell checker files in <filename>C:\\Program Files\\TortoiseGit\\Languages</filename>. If that folder isn't there, you have to create it first. The next time you start TortoiseGit, the spell checker will be available."
635 #: ../source/TortoiseGit_en.xml:684
636 msgid "Check the <literal>tsvn:projectlanguage</literal> setting. Refer to <xref linkend=\"tsvn-dug-propertypage\"/> for information about setting project properties."
640 #: ../source/TortoiseGit_en.xml:691
641 msgid "If no project language is set, or that language is not installed, try the language corresponding to the Windows locale."
645 #: ../source/TortoiseGit_en.xml:697
646 msgid "If the exact Windows locale doesn't work, try the <quote>Base</quote> language, eg. <literal>de_CH</literal> (Swiss-German) falls back to <literal>de_DE</literal> (German)."
650 #: ../source/TortoiseGit_en.xml:705
651 msgid "If none of the above works, then the default language is English, which is included with the standard installation."
655 #: ../source/TortoiseGit_en.xml:679
656 msgid "If you install multiple dictionaries, TortoiseGit uses these rules to select which one to use. <placeholder-1/>"
660 #: ../source/TortoiseGit_en.xml:722
661 msgid "Basic Concepts"
665 #: ../source/TortoiseGit_en.xml:724
667 msgstr "کتاب سابورژن"
670 #: ../source/TortoiseGit_en.xml:727
671 msgid "This chapter is a slightly modified version of the same chapter in the Git book. An online version of the Git book is available here: <ulink url=\"http://svnbook.red-bean.com/\"><citetitle>http://svnbook.red-bean.com/</citetitle></ulink>."
672 msgstr "این فصل نسخه اصلاح شده ای از همین فصل از کتاب سابورژن میباشد. نسخه بر خطی از کتاب سابورژن در این آدرس وجود دارد: <ulink url=\"http://svnbook.red-bean.com/\"><citetitle>http://svnbook.red-bean.com/</citetitle></ulink>."
675 #: ../source/TortoiseGit_en.xml:735
676 msgid "This chapter is a short, casual introduction to Git. If you're new to version control, this chapter is definitely for you. We begin with a discussion of general version control concepts, work our way into the specific ideas behind Git, and show some simple examples of Git in use."
677 msgstr "این فصل مقدمه این کوتاه و مختصر به سابورژن ارائه میکند. اگر تازه با مقوله کنترل نسخ آشنا شده اید، این فصل برای شماست. فصل را با بررسی اصول عمومی کنترل نسخ شروع میکنیم، سپس برخی ایده ها ی پشت سابورژن را بررسی کرده و به مثال هائی از نحوه استفاده از سابورژن میپردازیم."
680 #: ../source/TortoiseGit_en.xml:743
681 msgid "Even though the examples in this chapter show people sharing collections of program source code, keep in mind that Git can manage any sort of file collection - it's not limited to helping computer programmers."
687 #: ../source/TortoiseGit_en.xml:751
688 #: ../source/TortoiseGit_en.xml:1256
689 #: ../source/TortoiseGit_en.xml:2945
690 msgid "The Repository"
695 #: ../source/TortoiseGit_en.xml:753
696 #: ../source/TortoiseGit_en.xml:3711
701 #: ../source/TortoiseGit_en.xml:755
702 msgid "Git is a centralized system for sharing information. At its core is a <firstterm>repository</firstterm>, which is a central store of data. The repository stores information in the form of a <firstterm>filesystem tree</firstterm> - a typical hierarchy of files and directories. Any number of <firstterm>clients</firstterm> connect to the repository, and then read or write to these files. By writing data, a client makes the information available to others; by reading data, the client receives information from others."
706 #: ../source/TortoiseGit_en.xml:767
707 msgid "A Typical Client/Server System"
708 msgstr "یک سیستم سرویس دهنده/سرویس گیرنده معمولی"
711 #: ../source/TortoiseGit_en.xml:770
712 msgid "So why is this interesting? So far, this sounds like the definition of a typical file server. And indeed, the repository <emphasis>is</emphasis> a kind of file server, but it's not your usual breed. What makes the Git repository special is that <emphasis>it remembers every change</emphasis> ever written to it: every change to every file, and even changes to the directory tree itself, such as the addition, deletion, and rearrangement of files and directories."
716 #: ../source/TortoiseGit_en.xml:780
717 msgid "When a client reads data from the repository, it normally sees only the latest version of the filesystem tree. But the client also has the ability to view <emphasis>previous</emphasis> states of the filesystem. For example, a client can ask historical questions like, <quote>what did this directory contain last Wednesday?</quote>, or <quote>who was the last person to change this file, and what changes did they make?</quote> These are the sorts of questions that are at the heart of any <firstterm>version control system</firstterm>: systems that are designed to record and track changes to data over time."
721 #: ../source/TortoiseGit_en.xml:795
722 msgid "Versioning Models"
723 msgstr "انواع مدلهای نسخه برداری"
726 #: ../source/TortoiseGit_en.xml:796
728 msgid "All version control systems have to solve the same fundamental problem: how will the system allow users to share information, but prevent them from accidentally stepping on each other's feet? It's all too easy for users to accidentally overwrite each other's changes in the repository."
729 msgstr "همه سیستمهای کنترل نسخ بایستی مسائل اساسی مشابهی را حل کنند: کاربران چگونه اطلاعات خود را "
732 #: ../source/TortoiseGit_en.xml:805
733 msgid "The Problem of File-Sharing"
737 #: ../source/TortoiseGit_en.xml:806
738 msgid "Consider this scenario: suppose we have two co-workers, Harry and Sally. They each decide to edit the same repository file at the same time. If Harry saves his changes to the repository first, then it's possible that (a few moments later) Sally could accidentally overwrite them with her own new version of the file. While Harry's version of the file won't be lost forever (because the system remembers every change), any changes Harry made <emphasis>won't</emphasis> be present in Sally's newer version of the file, because she never saw Harry's changes to begin with. Harry's work is still effectively lost - or at least missing from the latest version of the file - and probably by accident. This is definitely a situation we want to avoid!"
742 #: ../source/TortoiseGit_en.xml:822
743 msgid "The Problem to Avoid"
748 #: ../source/TortoiseGit_en.xml:827
749 #: ../source/TortoiseGit_en.xml:843
750 msgid "The Lock-Modify-Unlock Solution"
754 #: ../source/TortoiseGit_en.xml:828
755 msgid "Many version control systems use a <firstterm>lock-modify-unlock</firstterm> model to address this problem, which is a very simple solution. In such a system, the repository allows only one person to change a file at a time. First Harry must <emphasis>lock</emphasis> the file before he can begin making changes to it. Locking a file is a lot like borrowing a book from the library; if Harry has locked a file, then Sally cannot make any changes to it. If she tries to lock the file, the repository will deny the request. All she can do is read the file, and wait for Harry to finish his changes and release his lock. After Harry unlocks the file, his turn is over, and now Sally can take her turn by locking and editing."
759 #: ../source/TortoiseGit_en.xml:846
760 msgid "The problem with the lock-modify-unlock model is that it's a bit restrictive, and often becomes a roadblock for users:"
764 #: ../source/TortoiseGit_en.xml:853
765 msgid "<emphasis>Locking may cause administrative problems.</emphasis> Sometimes Harry will lock a file and then forget about it. Meanwhile, because Sally is still waiting to edit the file, her hands are tied. And then Harry goes on vacation. Now Sally has to get an administrator to release Harry's lock. The situation ends up causing a lot of unnecessary delay and wasted time."
769 #: ../source/TortoiseGit_en.xml:864
770 msgid "<emphasis>Locking may cause unnecessary serialization.</emphasis> What if Harry is editing the beginning of a text file, and Sally simply wants to edit the end of the same file? These changes don't overlap at all. They could easily edit the file simultaneously, and no great harm would come, assuming the changes were properly merged together. There's no need for them to take turns in this situation."
774 #: ../source/TortoiseGit_en.xml:876
775 msgid "<emphasis>Locking may create a false sense of security.</emphasis> Pretend that Harry locks and edits file A, while Sally simultaneously locks and edits file B. But suppose that A and B depend on one another, and the changes made to each are semantically incompatible. Suddenly A and B don't work together anymore. The locking system was powerless to prevent the problem - yet it somehow provided a sense of false security. It's easy for Harry and Sally to imagine that by locking files, each is beginning a safe, insulated task, and thus inhibits them from discussing their incompatible changes early on."
780 #: ../source/TortoiseGit_en.xml:894
781 #: ../source/TortoiseGit_en.xml:922
782 msgid "The Copy-Modify-Merge Solution"
786 #: ../source/TortoiseGit_en.xml:895
787 msgid "Git, CVS, and other version control systems use a <firstterm>copy-modify-merge</firstterm> model as an alternative to locking. In this model, each user's client reads the repository and creates a personal <firstterm>working copy</firstterm> of the file or project. Users then work in parallel, modifying their private copies. Finally, the private copies are merged together into a new, final version. The version control system often assists with the merging, but ultimately a human being is responsible for making it happen correctly."
791 #: ../source/TortoiseGit_en.xml:907
792 msgid "Here's an example. Say that Harry and Sally each create working copies of the same project, copied from the repository. They work concurrently, and make changes to the same file <filename>A</filename> within their copies. Sally saves her changes to the repository first. When Harry attempts to save his changes later, the repository informs him that his file A is <firstterm>out-of-date</firstterm>. In other words, that file A in the repository has somehow changed since he last copied it. So Harry asks his client to <firstterm>merge</firstterm> any new changes from the repository into his working copy of file A. Chances are that Sally's changes don't overlap with his own; so once he has both sets of changes integrated, he saves his working copy back to the repository."
796 #: ../source/TortoiseGit_en.xml:926
797 msgid "...Copy-Modify-Merge Continued"
802 #: ../source/TortoiseGit_en.xml:930
803 #: ../source/TortoiseGit_en.xml:4817
808 #: ../source/TortoiseGit_en.xml:932
809 msgid "But what if Sally's changes <emphasis>do</emphasis> overlap with Harry's changes? What then? This situation is called a <firstterm>conflict</firstterm>, and it's usually not much of a problem. When Harry asks his client to merge the latest repository changes into his working copy, his copy of file A is somehow flagged as being in a state of conflict: he'll be able to see both sets of conflicting changes, and manually choose between them. Note that software can't automatically resolve conflicts; only humans are capable of understanding and making the necessary intelligent choices. Once Harry has manually resolved the overlapping changes (perhaps by discussing the conflict with Sally!), he can safely save the merged file back to the repository."
813 #: ../source/TortoiseGit_en.xml:947
814 msgid "The copy-modify-merge model may sound a bit chaotic, but in practice, it runs extremely smoothly. Users can work in parallel, never waiting for one another. When they work on the same files, it turns out that most of their concurrent changes don't overlap at all; conflicts are infrequent. And the amount of time it takes to resolve conflicts is far less than the time lost by a locking system."
818 #: ../source/TortoiseGit_en.xml:956
819 msgid "In the end, it all comes down to one critical factor: user communication. When users communicate poorly, both syntactic and semantic conflicts increase. No system can force users to communicate perfectly, and no system can detect semantic conflicts. So there's no point in being lulled into a false promise that a locking system will somehow prevent conflicts; in practice, locking seems to inhibit productivity more than anything else."
823 #: ../source/TortoiseGit_en.xml:966
824 msgid "There is one common situation where the lock-modify-unlock model comes out better, and that is where you have unmergeable files. For example if your repository contains some graphic images, and two people change the image at the same time, there is no way for those changes to be merged together. Either Harry or Sally will lose their changes."
828 #: ../source/TortoiseGit_en.xml:976
829 msgid "What does Git Do?"
833 #: ../source/TortoiseGit_en.xml:977
834 msgid "Git uses the copy-modify-merge solution by default, and in many cases this is all you will ever need. However, as of Version 1.2, Git also supports file locking, so if you have unmergeable files, or if you are simply forced into a locking policy by management, Git will still provide the features you need."
838 #: ../source/TortoiseGit_en.xml:989
839 msgid "Git in Action"
843 #: ../source/TortoiseGit_en.xml:991
844 msgid "Working Copies"
848 #: ../source/TortoiseGit_en.xml:993
853 #: ../source/TortoiseGit_en.xml:995
854 msgid "You've already read about working copies; now we'll demonstrate how the Git client creates and uses them."
858 #: ../source/TortoiseGit_en.xml:1000
859 msgid "A Git working copy is an ordinary directory tree on your local system, containing a collection of files. You can edit these files however you wish, and if they're source code files, you can compile your program from them in the usual way. Your working copy is your own private work area: Git will never incorporate other people's changes, nor make your own changes available to others, until you explicitly tell it to do so."
863 #: ../source/TortoiseGit_en.xml:1010
864 msgid "After you've made some changes to the files in your working copy and verified that they work properly, Git provides you with commands to <emphasis>publish</emphasis> your changes to the other people working with you on your project (by writing to the repository). If other people publish their own changes, Git provides you with commands to merge those changes into your working directory (by reading from the repository)."
868 #: ../source/TortoiseGit_en.xml:1020
869 msgid "A working copy also contains some extra files, created and maintained by Git, to help it carry out these commands. In particular, each directory in your working copy contains a subdirectory named <filename>.svn</filename>, also known as the working copy <firstterm>administrative directory</firstterm>. The files in each administrative directory help Git recognize which files contain unpublished changes, and which files are out-of-date with respect to others' work."
873 #: ../source/TortoiseGit_en.xml:1031
874 msgid "A typical Git repository often holds the files (or source code) for several projects; usually, each project is a subdirectory in the repository's filesystem tree. In this arrangement, a user's working copy will usually correspond to a particular subtree of the repository."
878 #: ../source/TortoiseGit_en.xml:1038
879 msgid "For example, suppose you have a repository that contains two software projects."
883 #: ../source/TortoiseGit_en.xml:1043
884 msgid "The Repository's Filesystem"
888 #: ../source/TortoiseGit_en.xml:1046
889 msgid "In other words, the repository's root directory has two subdirectories: <filename>paint</filename> and <filename>calc</filename>."
893 #: ../source/TortoiseGit_en.xml:1051
894 msgid "To get a working copy, you must <firstterm>check out</firstterm> some subtree of the repository. (The term <emphasis>check out</emphasis> may sound like it has something to do with locking or reserving resources, but it doesn't; it simply creates a private copy of the project for you)."
898 #: ../source/TortoiseGit_en.xml:1058
899 msgid "Suppose you make changes to <filename>button.c</filename>. Since the <filename>.svn</filename> directory remembers the file's modification date and original contents, Git can tell that you've changed the file. However, Git does not make your changes public until you explicitly tell it to. The act of publishing your changes is more commonly known as <firstterm>committing</firstterm> (or <firstterm>checking in</firstterm>) changes to the repository."
903 #: ../source/TortoiseGit_en.xml:1068
904 msgid "To publish your changes to others, you can use Git's <command>commit</command> command."
908 #: ../source/TortoiseGit_en.xml:1072
909 msgid "Now your changes to <filename>button.c</filename> have been committed to the repository; if another user checks out a working copy of <filename>/calc</filename>, they will see your changes in the latest version of the file."
913 #: ../source/TortoiseGit_en.xml:1078
914 msgid "Suppose you have a collaborator, Sally, who checked out a working copy of <filename>/calc</filename> at the same time you did. When you commit your change to <filename>button.c</filename>, Sally's working copy is left unchanged; Git only modifies working copies at the user's request."
918 #: ../source/TortoiseGit_en.xml:1086
919 msgid "To bring her project up to date, Sally can ask Git to <firstterm>update</firstterm> her working copy, by using the Git <command>update</command> command. This will incorporate your changes into her working copy, as well as any others that have been committed since she checked it out."
923 #: ../source/TortoiseGit_en.xml:1094
924 msgid "Note that Sally didn't need to specify which files to update; Git uses the information in the <filename>.svn</filename> directory, and further information in the repository, to decide which files need to be brought up to date."
928 #: ../source/TortoiseGit_en.xml:1103
929 msgid "Repository URLs"
933 #: ../source/TortoiseGit_en.xml:1104
934 msgid "Git repositories can be accessed through many different methods - on local disk, or through various network protocols. A repository location, however, is always a URL. The URL schema indicates the access method:"
938 #: ../source/TortoiseGit_en.xml:1112
939 msgid "Repository Access URLs"
943 #: ../source/TortoiseGit_en.xml:1118
948 #: ../source/TortoiseGit_en.xml:1119
949 msgid "Access Method"
953 #: ../source/TortoiseGit_en.xml:1125
958 #: ../source/TortoiseGit_en.xml:1127
959 msgid "Direct repository access on local or network drive."
964 #: ../source/TortoiseGit_en.xml:1133
965 #: ../source/TortoiseGit_en.xml:1144
970 #: ../source/TortoiseGit_en.xml:1135
971 msgid "Access via WebDAV protocol to Git-aware Apache server."
975 #: ../source/TortoiseGit_en.xml:1141
980 #: ../source/TortoiseGit_en.xml:1143
981 msgid "Same as <placeholder-1/>, but with SSL encryption."
985 #: ../source/TortoiseGit_en.xml:1149
993 #: ../source/TortoiseGit_en.xml:1153
994 #: ../source/TortoiseGit_en.xml:1162
995 #: ../source/TortoiseGit_en.xml:2484
996 #: ../source/TortoiseGit_en.xml:2623
1001 #: ../source/TortoiseGit_en.xml:1151
1002 msgid "Unauthenticated TCP/IP access via custom protocol to a <placeholder-1/> server."
1006 #: ../source/TortoiseGit_en.xml:1158
1011 #: ../source/TortoiseGit_en.xml:1160
1012 msgid "authenticated, encrypted TCP/IP access via custom protocol to a <placeholder-1/> server."
1016 #: ../source/TortoiseGit_en.xml:1168
1017 msgid "For the most part, Git's URLs use the standard syntax, allowing for server names and port numbers to be specified as part of the URL. The <literal>file://</literal> access method is normally used for local access, although it can be used with UNC paths to a networked host. The URL therefore takes the form <systemitem class=\"url\">file://hostname/path/to/repos</systemitem>. For the local machine, the <literal>hostname</literal> portion of the URL is required to be either absent or <literal>localhost</literal>. For this reason, local paths normally appear with three slashes, <systemitem class=\"url\">file:///path/to/repos</systemitem>."
1021 #: ../source/TortoiseGit_en.xml:1181
1022 msgid "Also, users of the <literal>file://</literal> scheme on Windows platforms will need to use an unofficially <quote>standard</quote> syntax for accessing repositories that are on the same machine, but on a different drive than the client's current working drive. Either of the two following URL path syntaxes will work where <literal>X</literal> is the drive on which the repository resides:"
1026 #: ../source/TortoiseGit_en.xml:1191
1030 "file:///X:/path/to/repos\n"
1032 "file:///X|/path/to/repos\n"
1037 #: ../source/TortoiseGit_en.xml:1197
1038 msgid "Note that a URL uses ordinary slashes even though the native (non-URL) form of a path on Windows uses backslashes."
1042 #: ../source/TortoiseGit_en.xml:1201
1043 msgid "You can safely access a FSFS repository via a network share, but you <emphasis>cannot</emphasis> access a BDB repository in this way."
1048 #: ../source/TortoiseGit_en.xml:1207
1049 #: ../source/TortoiseGit_en.xml:2610
1050 msgid "Do not create or access a Berkeley DB repository on a network share. It <emphasis>cannot</emphasis> exist on a remote filesystem. Not even if you have the network drive mapped to a drive letter. If you attempt to use Berkeley DB on a network share, the results are unpredictable - you may see mysterious errors right away, or it may be months before you discover that your repository database is subtly corrupted."
1054 #: ../source/TortoiseGit_en.xml:1219
1060 #: ../source/TortoiseGit_en.xml:1221
1061 #: ../source/TortoiseGit_en.xml:9425
1066 #: ../source/TortoiseGit_en.xml:1223
1067 msgid "A <command>svn commit</command> operation can publish changes to any number of files and directories as a single atomic transaction. In your working copy, you can change files' contents, create, delete, rename and copy files and directories, and then commit the complete set of changes as a unit."
1071 #: ../source/TortoiseGit_en.xml:1231
1072 msgid "In the repository, each commit is treated as an atomic transaction: either all the commits changes take place, or none of them take place. Git retains this atomicity in the face of program crashes, system crashes, network problems, and other users' actions."
1076 #: ../source/TortoiseGit_en.xml:1238
1077 msgid "Each time the repository accepts a commit, this creates a new state of the filesystem tree, called a <firstterm>revision</firstterm>. Each revision is assigned a unique natural number, one greater than the number of the previous revision. The initial revision of a freshly created repository is numbered zero, and consists of nothing but an empty root directory."
1081 #: ../source/TortoiseGit_en.xml:1247
1082 msgid "A nice way to visualize the repository is as a series of trees. Imagine an array of revision numbers, starting at 0, stretching from left to right. Each revision number has a filesystem tree hanging below it, and each tree is a <quote>snapshot</quote> of the way the repository looked after each commit."
1086 #: ../source/TortoiseGit_en.xml:1260
1087 msgid "Global Revision Numbers"
1091 #: ../source/TortoiseGit_en.xml:1261
1092 msgid "Unlike those of many other version control systems, Git's revision numbers apply to <emphasis>entire trees</emphasis>, not individual files. Each revision number selects an entire tree, a particular state of the repository after some committed change. Another way to think about it is that revision N represents the state of the repository filesystem after the Nth commit. When a Git user talks about ``revision 5 of <filename>foo.c</filename>'', they really mean ``<filename>foo.c</filename> as it appears in revision 5.'' Notice that in general, revisions N and M of a file do <emphasis>not</emphasis> necessarily differ!"
1096 #: ../source/TortoiseGit_en.xml:1276
1097 msgid "It's important to note that working copies do not always correspond to any single revision in the repository; they may contain files from several different revisions. For example, suppose you check out a working copy from a repository whose most recent revision is 4:"
1101 #: ../source/TortoiseGit_en.xml:1283
1111 #: ../source/TortoiseGit_en.xml:1288
1112 msgid "At the moment, this working directory corresponds exactly to revision 4 in the repository. However, suppose you make a change to <filename>button.c</filename>, and commit that change. Assuming no other commits have taken place, your commit will create revision 5 of the repository, and your working copy will now look like this:"
1116 #: ../source/TortoiseGit_en.xml:1296
1126 #: ../source/TortoiseGit_en.xml:1301
1127 msgid "Suppose that, at this point, Sally commits a change to <filename>integer.c</filename>, creating revision 6. If you use <command>svn update</command> to bring your working copy up to date, then it will look like this:"
1131 #: ../source/TortoiseGit_en.xml:1307
1141 #: ../source/TortoiseGit_en.xml:1312
1142 msgid "Sally's changes to <filename>integer.c</filename> will appear in your working copy, and your change will still be present in <filename>button.c</filename>. In this example, the text of <filename>Makefile</filename> is identical in revisions 4, 5, and 6, but Git will mark your working copy of <filename>Makefile</filename> with revision 6 to indicate that it is still current. So, after you do a clean update at the top of your working copy, it will generally correspond to exactly one revision in the repository."
1146 #: ../source/TortoiseGit_en.xml:1325
1147 msgid "How Working Copies Track the Repository"
1151 #: ../source/TortoiseGit_en.xml:1326
1152 msgid "For each file in a working directory, Git records two essential pieces of information in the <filename>.svn/</filename> administrative area:"
1156 #: ../source/TortoiseGit_en.xml:1332
1157 msgid "what revision your working file is based on (this is called the file's <firstterm>working revision</firstterm>), and"
1161 #: ../source/TortoiseGit_en.xml:1339
1162 msgid "a timestamp recording when the local copy was last updated by the repository."
1166 #: ../source/TortoiseGit_en.xml:1345
1167 msgid "Given this information, by talking to the repository, Git can tell which of the following four states a working file is in:"
1171 #: ../source/TortoiseGit_en.xml:1352
1172 msgid "Unchanged, and current"
1176 #: ../source/TortoiseGit_en.xml:1354
1177 msgid "The file is unchanged in the working directory, and no changes to that file have been committed to the repository since its working revision. A <command>commit</command> of the file will do nothing, and an <command>update</command> of the file will do nothing."
1181 #: ../source/TortoiseGit_en.xml:1365
1182 msgid "Locally changed, and current"
1186 #: ../source/TortoiseGit_en.xml:1367
1187 msgid "The file has been changed in the working directory, and no changes to that file have been committed to the repository since its base revision. There are local changes that have not been committed to the repository, thus a <command>commit</command> of the file will succeed in publishing your changes, and an <command>update</command> of the file will do nothing."
1191 #: ../source/TortoiseGit_en.xml:1379
1192 msgid "Unchanged, and out-of-date"
1196 #: ../source/TortoiseGit_en.xml:1381
1197 msgid "The file has not been changed in the working directory, but it has been changed in the repository. The file should eventually be updated, to make it current with the public revision. A <command>commit</command> of the file will do nothing, and an <command>update</command> of the file will fold the latest changes into your working copy."
1201 #: ../source/TortoiseGit_en.xml:1393
1202 msgid "Locally changed, and out-of-date"
1206 #: ../source/TortoiseGit_en.xml:1395
1207 msgid "The file has been changed both in the working directory, and in the repository. A <command>commit</command> of the file will fail with an <emphasis>out-of-date</emphasis> error. The file should be updated first; an <command>update</command> command will attempt to merge the public changes with the local changes. If Git can't complete the merge in a plausible way automatically, it leaves it to the user to resolve the conflict."
1211 #: ../source/TortoiseGit_en.xml:1412
1216 #: ../source/TortoiseGit_en.xml:1413
1217 msgid "We've covered a number of fundamental Git concepts in this chapter:"
1221 #: ../source/TortoiseGit_en.xml:1419
1222 msgid "We've introduced the notions of the central repository, the client working copy, and the array of repository revision trees."
1226 #: ../source/TortoiseGit_en.xml:1425
1227 msgid "We've seen some simple examples of how two collaborators can use Git to publish and receive changes from one another, using the 'copy-modify-merge' model."
1231 #: ../source/TortoiseGit_en.xml:1432
1232 msgid "We've talked a bit about the way Git tracks and manages information in a working copy."
1236 #: ../source/TortoiseGit_en.xml:1445
1237 msgid "Setting Up A Server"
1241 #: ../source/TortoiseGit_en.xml:1447
1242 msgid "To use TortoiseGit (or any other Git client), you need a place where your repositories are located. You can either store your repositories locally and access them using the <literal>file://</literal> protocol or you can place them on a server and access them with the <literal>http://</literal> or <literal>svn://</literal> protocols. The two server protocols can also be encrypted. You use <literal>https://</literal> or <literal>svn+ssh://</literal>. This chapter shows you step by step on how you can set up such a server on a Windows machine."
1246 #: ../source/TortoiseGit_en.xml:1458
1247 msgid "More detailed information on the Git server options, and how to choose the best architecture for your situation, can be found in the Git book under <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.serverconfig.html\"><citetitle>Server Configuration</citetitle></ulink>."
1251 #: ../source/TortoiseGit_en.xml:1466
1252 msgid "If you don't have a server and you work alone then local repositories are probably your best choice. You can skip this chapter and go directly to <xref linkend=\"tsvn-repository\"/>."
1256 #: ../source/TortoiseGit_en.xml:1471
1257 msgid "If you were thinking about setting up a multi-user repository on a network share, think again. Read <xref linkend=\"tsvn-repository-local-share\"/> to find out why we think this is a bad idea."
1261 #: ../source/TortoiseGit_en.xml:1480
1262 msgid "Apache Based Server"
1266 #: ../source/TortoiseGit_en.xml:1484
1271 #: ../source/TortoiseGit_en.xml:1486
1272 msgid "The most flexible of all possible server setups for Git is the Apache based one. Although a bit more complicated to set up, it offers benefits that other servers cannot:"
1277 #: ../source/TortoiseGit_en.xml:1492
1278 #: ../source/TortoiseGit_en.xml:1496
1283 #: ../source/TortoiseGit_en.xml:1498
1284 msgid "The Apache based Git server uses the WebDAV protocol which is supported by many other programs as well. You could e.g. mount such a repository as a <quote>Web folder</quote> in the Windows explorer and then access it like any other folder in the file system."
1288 #: ../source/TortoiseGit_en.xml:1509
1289 msgid "Browsing The Repository"
1293 #: ../source/TortoiseGit_en.xml:1511
1294 msgid "You can point your browser to the URL of your repository and browse the contents of it without having a Git client installed. This gives access to your data to a much wider circle of users."
1299 #: ../source/TortoiseGit_en.xml:1521
1300 #: ../source/TortoiseGit_en.xml:3640
1301 msgid "Authentication"
1305 #: ../source/TortoiseGit_en.xml:1523
1306 msgid "You can use any authentication mechanism Apache supports, including SSPI and LDAP."
1310 #: ../source/TortoiseGit_en.xml:1530
1315 #: ../source/TortoiseGit_en.xml:1532
1316 msgid "Since Apache is very stable and secure, you automatically get the same security for your repository. This includes SSL encryption."
1320 #: ../source/TortoiseGit_en.xml:1542
1321 msgid "Installing Apache"
1325 #: ../source/TortoiseGit_en.xml:1547
1326 msgid "Please note that Windows XP without the service pack 1 will lead to bogus network data and could therefore corrupt your repository!"
1330 #: ../source/TortoiseGit_en.xml:1555
1331 msgid "Download the latest version of the Apache web server from <ulink url=\"http://httpd.apache.org/download.cgi\"><citetitle>http://httpd.apache.org/download.cgi</citetitle></ulink>. Make sure that you download the version 2.2.x - the version 1.3.xx won't work!"
1335 #: ../source/TortoiseGit_en.xml:1564
1336 msgid "The msi installer for Apache can be found by clicking on <literal>other files</literal>, then browse to <filename>binaries/win32</filename>. You may want to choose the msi file <filename>apache-2.2.x-win32-x86-openssl-0.9.x.msi</filename> (the one that includes OpenSSL)."
1340 #: ../source/TortoiseGit_en.xml:1572
1341 msgid "Once you have the Apache2 installer you can double click on it and it will guide you through the installation process. Make sure that you enter the server-URL correctly (if you don't have a DNS name for your server just enter the IP-address). I recommend to install Apache <emphasis>for All Users, on Port 80, as a Service</emphasis>. Note: if you already have IIS or any other program running which listens on port 80 the installation might fail. If that happens, go to the programs directory, <filename>\\Apache Group\\Apache2\\conf</filename> and locate the file <filename>httpd.conf</filename>. Edit that file so that <literal>Listen 80</literal> is changed to a free port, e.g. <literal>Listen 81</literal>. Then restart the installation - this time it should finish without problems."
1345 #: ../source/TortoiseGit_en.xml:1594
1346 msgid "Now test if the Apache web server is running correctly by pointing your web browser to <systemitem class=\"url\">http://localhost/</systemitem> - a preconfigured Website should show up."
1350 #: ../source/TortoiseGit_en.xml:1603
1351 msgid "If you decide to install Apache as a service, be warned that by default it will run as the local system account. It would be a more secure practice for you to create a separate account for Apache to run as."
1355 #: ../source/TortoiseGit_en.xml:1609
1356 msgid "Make sure that the account on the server that Apache is running as has an explicit entry in the repository directory's access control list (right-click directory | properties | security), with full control. Otherwise, users will not be able to commit their changes."
1360 #: ../source/TortoiseGit_en.xml:1615
1361 msgid "Even if Apache runs as local system, you still need such an entry (which will be the SYSTEM account in this case)."
1365 #: ../source/TortoiseGit_en.xml:1619
1366 msgid "If Apache does not have this permission set up, your users will get <quote>Access denied</quote> error messages, which show up in the Apache error log as error 500."
1370 #: ../source/TortoiseGit_en.xml:1543
1371 msgid "The first thing you need before installing Apache is a computer with Windows 2000, Windows XP+SP1, Windows 2003, Vista or Server 2008. <warning><placeholder-1/></warning><placeholder-2/><caution><placeholder-3/><placeholder-4/><placeholder-5/><placeholder-6/></caution>"
1375 #: ../source/TortoiseGit_en.xml:1628
1376 msgid "Installing Git"
1380 #: ../source/TortoiseGit_en.xml:1632
1381 msgid "Download the latest version of the Git Win32 binaries for Apache. Be sure to get the right version to integrate with your version of Apache, otherwise you will get an obscure error message when you try to restart. If you have Apache 2.2.x go to <ulink url=\"http://Git.tigris.org/servlets/ProjectDocumentList?folderID=8100\"><citetitle>http://Git.tigris.org/servlets/ProjectDocumentList?folderID=8100</citetitle></ulink>."
1385 #: ../source/TortoiseGit_en.xml:1644
1386 msgid "Run the Git installer and follow the instructions. If the Git installer recognized that you've installed Apache, then you're almost done. If it couldn't find an Apache server then you have to do some additional steps."
1391 #: ../source/TortoiseGit_en.xml:1654
1392 #: ../source/TortoiseGit_en.xml:1983
1393 msgid "mod_authz_svn"
1397 #: ../source/TortoiseGit_en.xml:1656
1398 msgid "Using the windows explorer, go to the installation directory of Git (usually <filename>c:\\program files\\Git</filename>) and find the files <filename>/httpd/mod_dav_svn.so</filename> and <filename>mod_authz_svn.so</filename>. Copy these files to the Apache modules directory (usually <filename>c:\\program files\\apache group\\apache2\\modules </filename>)."
1402 #: ../source/TortoiseGit_en.xml:1669
1403 msgid "Copy the file <filename>/bin/libdb*.dll</filename> and <filename>/bin/intl3_svn.dll</filename> from the Git installation directory to the Apache bin directory."
1407 #: ../source/TortoiseGit_en.xml:1677
1408 msgid "Edit Apache's configuration file (usually <filename> C:\\Program Files\\Apache Group\\Apache2\\conf\\httpd.conf</filename>) with a text editor such as Notepad and make the following changes:"
1412 #: ../source/TortoiseGit_en.xml:1683
1414 "Uncomment (remove the '<literal>#</literal>' mark) the following lines: <screen>\n"
1415 "#LoadModule dav_fs_module modules/mod_dav_fs.so\n"
1416 "#LoadModule dav_module modules/mod_dav.so\n"
1417 "</screen> Add the following two lines to the end of the <literal>LoadModule</literal> section. <screen>\n"
1418 "LoadModule dav_svn_module modules/mod_dav_svn.so\n"
1419 "LoadModule authz_svn_module modules/mod_authz_svn.so\n"
1425 #: ../source/TortoiseGit_en.xml:1702
1426 #: ../source/TortoiseGit_en.xml:12140
1427 msgid "Configuration"
1431 #: ../source/TortoiseGit_en.xml:1713
1433 "At the end of the config file add the following lines: <screen>\n"
1434 "<Location /svn>\n"
1436 " SVNListParentPath on\n"
1437 " SVNParentPath D:\\SVN\n"
1438 " #SVNIndexXSLT \"/svnindex.xsl\"\n"
1440 " AuthName \"Git repositories\"\n"
1441 " AuthUserFile passwd\n"
1442 " #AuthzSVNAccessFile svnaccessfile\n"
1443 " Require valid-user\n"
1444 "</Location>\n"
1445 "</screen> This configures Apache so that all your Git repositories are physically located below <filename>D:\\SVN</filename>. The repositories are served to the outside world from the URL: <systemitem class=\"url\"> http://MyServer/svn/ </systemitem>. Access is restricted to known users/passwords listed in the <filename>passwd</filename> file."
1449 #: ../source/TortoiseGit_en.xml:1740
1451 "To create the <filename>passwd</filename> file, open the command prompt (DOS-Box) again, change to the <filename>apache2</filename> folder (usually <filename>c:\\program files\\apache group\\apache2</filename>) and create the file by entering <screen>\n"
1452 "bin\\htpasswd -c passwd <username>\n"
1453 "</screen> This will create a file with the name <filename>passwd</filename> which is used for authentication. Additional users can be added with <screen>\n"
1454 "bin\\htpasswd passwd <username>\n"
1459 #: ../source/TortoiseGit_en.xml:1759
1460 msgid "Restart the Apache service again."
1464 #: ../source/TortoiseGit_en.xml:1764
1465 msgid "Point your browser to <systemitem class=\"url\">http://MyServer/svn/MyNewRepository</systemitem> (where <filename>MyNewRepository</filename> is the name of the Git repository you created before). If all went well you should be prompted for a username and password, then you can see the contents of your repository."
1469 #: ../source/TortoiseGit_en.xml:1703
1470 msgid "Now you have set up Apache and Git, but Apache doesn't know how to handle Git clients like TortoiseGit yet. To get Apache to know which URL will be used for Git repositories you have to edit the Apache configuration file (usually located in <filename>c:\\program files\\apache group\\apache2\\conf\\httpd.conf</filename>) with any text editor you like (e.g. Notepad): <placeholder-1/>"
1474 #: ../source/TortoiseGit_en.xml:1777
1481 #: ../source/TortoiseGit_en.xml:1780
1482 #: ../source/TortoiseGit_en.xml:1815
1483 #: ../source/TortoiseGit_en.xml:1951
1484 msgid "SVNParentPath"
1488 #: ../source/TortoiseGit_en.xml:1785
1489 msgid "Apache <filename>httpd.conf</filename> Settings"
1493 #: ../source/TortoiseGit_en.xml:1791
1498 #: ../source/TortoiseGit_en.xml:1792
1503 #: ../source/TortoiseGit_en.xml:1800
1504 msgid "http://MyServer/svn/"
1508 #: ../source/TortoiseGit_en.xml:1798
1509 msgid "means that the Git repositories are available from the URL <placeholder-1/>"
1513 #: ../source/TortoiseGit_en.xml:1805
1514 msgid "tells Apache which module will be responsible to serve that URL - in this case the Git module."
1518 #: ../source/TortoiseGit_en.xml:1812
1519 msgid "For Git version 1.3 and higher, this directive enables listing all the available repositories under <placeholder-1/>."
1523 #: ../source/TortoiseGit_en.xml:1822
1528 #: ../source/TortoiseGit_en.xml:1820
1529 msgid "tells Git to look for repositories below <placeholder-1/>"
1533 #: ../source/TortoiseGit_en.xml:1827
1534 msgid "Used to make the browsing with a web browser prettier."
1538 #: ../source/TortoiseGit_en.xml:1834
1539 msgid "is to activate basic authentication, i.e. Username/password"
1543 #: ../source/TortoiseGit_en.xml:1841
1544 msgid "is used as an information whenever an authentication dialog pops up to tell the user what the authentication is for"
1548 #: ../source/TortoiseGit_en.xml:1848
1549 msgid "specifies which password file to use for authentication"
1553 #: ../source/TortoiseGit_en.xml:1854
1554 msgid "Location of the Access file for paths inside a Git repository"
1558 #: ../source/TortoiseGit_en.xml:1861
1559 msgid "specifies that only users who entered a correct username/password are allowed to access the URL"
1563 #: ../source/TortoiseGit_en.xml:1873
1565 "If you want your repository to have read access for everyone but write access only for specific users you can change the line <screen>\n"
1566 "Require valid-user\n"
1567 "</screen> to <screen>\n"
1568 "<LimitExcept GET PROPFIND OPTIONS REPORT>\n"
1569 "Require valid-user\n"
1570 "</LimitExcept>\n"
1575 #: ../source/TortoiseGit_en.xml:1888
1577 "Using a <filename>passwd</filename> file limits and grants access to all of your repositories as a unit. If you want more control over which users have access to each folder inside a repository you can uncomment the line <screen>\n"
1578 "#AuthzSVNAccessFile svnaccessfile\n"
1579 "</screen> and create a Git access file. Apache will make sure that only valid users are able to access your <filename>/svn</filename> location, and will then pass the username to Git's <literal>AuthzSVNAccessFile</literal> module so that it can enforce more granular access based upon rules listed in the Git access file. Note that paths are specified either as <literal>repos:path</literal> or simply <literal>path</literal>. If you don't specify a particular repository, that access rule will apply to all repositories under <literal>SVNParentPath</literal>. The format of the authorization-policy file used by <literal>mod_authz_svn</literal> is described in <xref linkend=\"tsvn-serversetup-mod_authz_svn\"/>"
1583 #: ../source/TortoiseGit_en.xml:1915
1585 "To make browsing the repository with a web browser 'prettier', uncomment the line <screen>\n"
1586 "#SVNIndexXSLT \"/svnindex.xsl\"\n"
1587 "</screen> and put the files <filename>svnindex.xsl</filename>, <filename>svnindex.css</filename> and <filename>menucheckout.ico</filename> in your document root directory (usually <filename>C:/Program Files/Apache Group/Apache2/htdocs</filename>). The directory is set with the <literal>DocumentRoot</literal> directive in your Apache config file."
1591 #: ../source/TortoiseGit_en.xml:1928
1592 msgid "You can get those three files directly from our source repository at <ulink url=\"http://TortoiseGit.tigris.org/svn/TortoiseGit/trunk/contrib/other/svnindex\"><citetitle>http://TortoiseGit.tigris.org/svn/TortoiseGit/trunk/contrib/other/svnindex</citetitle></ulink>. If you're asked for authentication for this link, enter <literal>guest</literal> as username and leave the password empty."
1596 #: ../source/TortoiseGit_en.xml:1937
1597 msgid "The XSL file from the TortoiseGit repository has a nice gimmick: if you browse the repository with your web browser, then every folder in your repository has an icon on the right shown. If you click on that icon, the TortoiseGit checkout dialog is started for this URL."
1601 #: ../source/TortoiseGit_en.xml:1782
1602 msgid "A short explanation of what you just entered: <placeholder-1/> But that's just an example. There are many, many more possibilities of what you can do with the Apache web server. <placeholder-2/>"
1606 #: ../source/TortoiseGit_en.xml:1949
1607 msgid "Multiple Repositories"
1611 #: ../source/TortoiseGit_en.xml:1954
1612 msgid "Index of projects"
1616 #: ../source/TortoiseGit_en.xml:1956
1617 msgid "If you used the <literal>SVNParentPath</literal> directive then you don't have to change the Apache config file every time you add a new Git repository. Simply create the new repository under the same location as the first repository and you're done! In my company I have direct access to that specific folder on the server via SMB (normal windows file access). So I just create a new folder there, run the TortoiseGit command <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Create repository here...</guimenuitem></menuchoice> and a new project has a home..."
1621 #: ../source/TortoiseGit_en.xml:1970
1622 msgid "If you are using Git 1.3 or later, you can use the <literal>SVNListParentPath on</literal> directive to allow Apache to produce a listing of all available projects if you point your browser at the parent path rather than at a specific repository."
1626 #: ../source/TortoiseGit_en.xml:1978
1627 msgid "Path-Based Authorization"
1631 #: ../source/TortoiseGit_en.xml:1980
1632 msgid "Authorization"
1636 #: ../source/TortoiseGit_en.xml:1985
1637 msgid "The <literal>mod_authz_svn</literal> module permits fine-grained control of access permissions based on user names and repository paths. This is available with the Apache server, and as of Git 1.3 it is available with svnserve as well."
1641 #: ../source/TortoiseGit_en.xml:1991
1643 "An example file would look like this: <screen>\n"
1645 "admin = john, kate\n"
1646 "devteam1 = john, rachel, sally\n"
1647 "devteam2 = kate, peter, mark\n"
1648 "docs = bob, jane, mike\n"
1650 "# Default access rule for ALL repositories\n"
1651 "# Everyone can read, admins can write, Dan German is excluded.\n"
1656 "# Allow developers complete access to their project repos\n"
1665 "# Give the doc people write access to all the docs folders\n"
1668 "# Give trainees write access in the training repository only\n"
1669 "[TrainingRepos:/]\n"
1675 #: ../source/TortoiseGit_en.xml:2023
1676 msgid "Note that checking every path can be an expensive operation, particularly in the case of the revision log. The server checks every changed path in each revision and checks it for readability, which can be time-consuming on revisions which affect large numbers of files."
1680 #: ../source/TortoiseGit_en.xml:2030
1681 msgid "Authentication and authorization are separate processes. If a user wants to gain access to a repository path, she has to meet <emphasis>both</emphasis>, the usual authentication requirements and the authorization requirements of the access file."
1685 #: ../source/TortoiseGit_en.xml:2038
1686 msgid "Authentication With a Windows Domain"
1690 #: ../source/TortoiseGit_en.xml:2040
1691 msgid "Windows domain"
1695 #: ../source/TortoiseGit_en.xml:2043
1696 msgid "domaincontroller"
1700 #: ../source/TortoiseGit_en.xml:2045
1701 msgid "As you might have noticed you need to make a username/password entry in the <filename>passwd</filename> file for each user separately. And if (for security reasons) you want your users to periodically change their passwords you have to make the change manually."
1705 #: ../source/TortoiseGit_en.xml:2052
1706 msgid "But there's a solution for that problem - at least if you're accessing the repository from inside a LAN with a windows domain controller: <literal>mod_auth_sspi</literal>!"
1710 #: ../source/TortoiseGit_en.xml:2058
1715 #: ../source/TortoiseGit_en.xml:2061
1720 #: ../source/TortoiseGit_en.xml:2063
1721 msgid "The original SSPI module was offered by Syneapps including source code. But the development for it has been stopped. But don't despair, the community has picked it up and improved it. It has a new home on <ulink url=\"http://sourceforge.net/projects/mod-auth-sspi/\"><citetitle>SourceForge</citetitle></ulink>."
1725 #: ../source/TortoiseGit_en.xml:2074
1726 msgid "Download the module which matches your apache version, then copy the file <filename>mod_auth_sspi.so</filename> into the Apache modules folder."
1730 #: ../source/TortoiseGit_en.xml:2081
1732 "Edit the Apache config file: add the line <screen>\n"
1733 "LoadModule sspi_auth_module modules/mod_auth_sspi.so\n"
1734 "</screen> to the <literal>LoadModule</literal> section. Make sure you insert this line <emphasis>before</emphasis> the line <screen>\n"
1735 "LoadModule auth_module modules/mod_auth.so\n"
1740 #: ../source/TortoiseGit_en.xml:2094
1742 "To make the Git location use this type of authentication you have to change the line <screen>\n"
1744 "</screen> to <screen>\n"
1746 "</screen> also you need to add <screen>\n"
1748 "SSPIAuthoritative On\n"
1749 "SSPIDomain <domaincontroller>\n"
1750 "SSPIOmitDomain on\n"
1751 "SSPIUsernameCase lower\n"
1752 "SSPIPerRequestAuth on\n"
1753 "SSPIOfferBasic On\n"
1754 "</screen> within the <literal><Location /svn></literal> block. If you don't have a domain controller, leave the name of the domain control as <literal><domaincontroller></literal>."
1758 #: ../source/TortoiseGit_en.xml:2120
1759 msgid "Note that if you are authenticating using SSPI, then you don't need the <literal>AuthUserFile</literal> line to define a password file any more. Apache authenticates your username and password against your windows domain instead. You will need to update the users list in your <filename>svnaccessfile</filename> to reference <literal>DOMAIN\\username</literal> as well."
1763 #: ../source/TortoiseGit_en.xml:2130
1764 msgid "The SSPI authentication is only enabled for SSL secured connections (https). If you're only using normal http connections to your server, it won't work."
1768 #: ../source/TortoiseGit_en.xml:2135
1769 msgid "To enable SSL on your server, see the chapter: <xref linkend=\"tsvn-serversetup-apache-7\"/>"
1773 #: ../source/TortoiseGit_en.xml:2141
1774 msgid "Git <filename>AuthzSVNAccessFile</filename> files are case sensitive in regard to user names (<literal>JUser</literal> is different from <literal>juser</literal>)."
1778 #: ../source/TortoiseGit_en.xml:2146
1779 msgid "In Microsoft's world, Windows domains and user names are not case sensitive. Even so, some network administrators like to create user accounts in CamelCase (e.g. <literal>JUser</literal>)."
1783 #: ../source/TortoiseGit_en.xml:2151
1784 msgid "This difference can bite you when using SSPI authentication as the windows domain and user names are passed to Git in the same case as the user types them in at the prompt. Internet Explorer often passes the username to Apache automatically using whatever case the account was created with."
1788 #: ../source/TortoiseGit_en.xml:2159
1789 msgid "The end result is that you may need at least two entries in your <literal>AuthzSVNAccessFile</literal> for each user -- a lowercase entry and an entry in the same case that Internet Explorer passes to Apache. You will also need to train your users to also type in their credentials using lower case when accessing repositories via TortoiseGit."
1793 #: ../source/TortoiseGit_en.xml:2167
1794 msgid "Apache's Error and Access logs are your best friend in deciphering problems such as these as they will help you determine the username string passed onto Git's <literal>AuthzSVNAccessFile</literal> module. You may need to experiment with the exact format of the user string in the <literal>svnaccessfile</literal> (e.g. <literal>DOMAIN\\user</literal> vs. <literal>DOMAIN//user</literal>) in order to get everything working."
1798 #: ../source/TortoiseGit_en.xml:2181
1799 msgid "Multiple Authentication Sources"
1803 #: ../source/TortoiseGit_en.xml:2183
1804 msgid "Multiple authentication"
1808 #: ../source/TortoiseGit_en.xml:2185
1809 msgid "It is also possible to have more than one authentication source for your Git repository. To do this, you need to make each authentication type non-authoritative, so that Apache will check multiple sources for a matching username/password."
1813 #: ../source/TortoiseGit_en.xml:2191
1814 msgid "A common scenario is to use both Windows domain authentication and a <literal>passwd</literal> file, so that you can provide SVN access to users who don't have a Windows domain login."
1818 #: ../source/TortoiseGit_en.xml:2198
1820 "To enable both Windows domain and <filename>passwd</filename> file authentication, add the following entries within the <literal><Location></literal> block of your Apache config file: <screen>\n"
1821 "AuthBasicAuthoritative Off\n"
1822 "SSPIAuthoritative Off\n"
1827 #: ../source/TortoiseGit_en.xml:2209
1829 "Here is an example of the full Apache configuration for combined Windows domain and <literal>passwd</literal> file authentication: <screen>\n"
1830 "<Location /svn>\n"
1832 " SVNListParentPath on\n"
1833 " SVNParentPath D:\\SVN\n"
1835 " AuthName \"Git repositories\"\n"
1836 " AuthzSVNAccessFile svnaccessfile.txt\n"
1838 "# NT Domain Logins.\n"
1841 " SSPIAuthoritative Off\n"
1842 " SSPIDomain <domaincontroller>\n"
1843 " SSPIOfferBasic On\n"
1845 "# Htpasswd Logins.\n"
1847 " AuthBasicAuthoritative Off\n"
1848 " AuthUserFile passwd\n"
1850 " Require valid-user\n"
1851 "</Location>\n"
1856 #: ../source/TortoiseGit_en.xml:2239
1857 msgid "Securing the server with SSL"
1861 #: ../source/TortoiseGit_en.xml:2241
1866 #: ../source/TortoiseGit_en.xml:2243
1867 msgid "Even though Apache 2.2.x has OpenSSL support, it is not activated by default. You need to activate this manually."
1871 #: ../source/TortoiseGit_en.xml:2249
1873 "In the apache config file, uncomment the lines: <screen>\n"
1874 "#LoadModule ssl_module modules/mod_ssl.so\n"
1875 "</screen> and at the bottom <screen>\n"
1876 "#Include conf/extra/httpd-ssl.conf\n"
1877 "</screen> then change the line (on one line) <screen>\n"
1878 "SSLMutex \"file:C:/Program Files/Apache Software Foundation/\\\n"
1879 "Apache2.2/logs/ssl_mutex\"\n"
1880 "</screen> to <screen>\n"
1881 "SSLMutex default\n"
1886 #: ../source/TortoiseGit_en.xml:2271
1888 "Next you need to create an SSL certificate. To do that open a command prompt (DOS-Box) and change to the Apache folder (e.g. <filename>C:\\program files\\apache group\\apache2</filename>) and type the following command: <screen>\n"
1889 "bin\\openssl req -config bin\\openssl.cnf -new -out my-server.csr\n"
1890 "</screen> You will be asked for a passphrase. Please don't use simple words but whole sentences, e.g. a part of a poem. The longer the phrase the better. Also you have to enter the URL of your server. All other questions are optional but we recommend you fill those in too."
1894 #: ../source/TortoiseGit_en.xml:2286
1896 "Normally the <filename>privkey.pem</filename> file is created automatically, but if it isn't you need to type this command to generate it: <screen>\n"
1897 "bin\\openssl genrsa -out conf\\privkey.pem 2048\n"
1902 #: ../source/TortoiseGit_en.xml:2294
1904 "Next type the commands <screen>\n"
1905 "bin\\openssl rsa -in conf\\privkey.pem -out conf\\server.key\n"
1906 "</screen> and (on one line) <screen>\n"
1907 "bin\\openssl req -new -key conf\\server.key -out conf\\server.csr \\\n"
1908 "-config conf\\openssl.cnf\n"
1909 "</screen> and then (on one line) <screen>\n"
1910 "bin\\openssl x509 -in conf\\server.csr -out conf\\server.crt\n"
1911 " -req -signkey conf\\server.key -days 4000\n"
1912 "</screen> This will create a certificate which will expire in 4000 days. And finally enter (on one line): <screen>\n"
1913 "bin\\openssl x509 -in conf\\server.cert -out conf\\server.der.crt\n"
1915 "</screen> These commands created some files in the Apache <filename>conf</filename> folder (<filename>server.der.crt</filename>, <filename>server.csr</filename>, <filename>server.key</filename>, <filename>.rnd</filename>, <filename>privkey.pem</filename>, <filename>server.cert</filename>)."
1919 #: ../source/TortoiseGit_en.xml:2326
1920 msgid "Restart the Apache service."
1924 #: ../source/TortoiseGit_en.xml:2331
1925 msgid "Point your browser to <systemitem class=\"url\">https://servername/svn/project</systemitem> ..."
1929 #: ../source/TortoiseGit_en.xml:2339
1930 msgid "SSL and Internet Explorer"
1934 #: ../source/TortoiseGit_en.xml:2340
1935 msgid "If you're securing your server with SSL and use authentication against a windows domain you will encounter that browsing the repository with the Internet Explorer doesn't work anymore. Don't worry - this is only the Internet Explorer not able to authenticate. Other browsers don't have that problem and TortoiseGit and any other Git client are still able to authenticate."
1939 #: ../source/TortoiseGit_en.xml:2354
1940 msgid "define a separate <literal><Location /path></literal> directive in the Apache config file, and add the <literal>SSPIBasicPreferred On</literal>. This will allow IE to authenticate again, but other browsers and Git won't be able to authenticate against that location."
1944 #: ../source/TortoiseGit_en.xml:2364
1945 msgid "Offer browsing with unencrypted authentication (without SSL) too. Strangely IE doesn't have any problems with authenticating if the connection is not secured with SSL."
1949 #: ../source/TortoiseGit_en.xml:2372
1951 "In the SSL \"standard\" setup there's often the following statement in Apache's virtual SSL host: <screen>\n"
1952 "SetEnvIf User-Agent \".*MSIE.*\" \\\n"
1953 " nokeepalive ssl-unclean-shutdown \\\n"
1954 " downgrade-1.0 force-response-1.0\n"
1955 "</screen> There are (were?) good reasons for this configuration, see <ulink url=\"http://www.modssl.org/docs/2.8/ssl_faq.html#ToC49\"><citetitle>http://www.modssl.org/docs/2.8/ssl_faq.html#ToC49</citetitle></ulink> But if you want NTLM authentication you have to use <literal>keepalive</literal>. If You uncomment the whole <literal>SetEnvIf</literal> you should be able to authenticate IE with windows authentication over SSL against the Apache on Win32 with included <literal>mod_auth_sspi</literal>."
1959 #: ../source/TortoiseGit_en.xml:2349
1960 msgid "If you still want to use IE to browse the repository you can either: <placeholder-1/>"
1964 #: ../source/TortoiseGit_en.xml:2395
1965 msgid "Forcing SSL access"
1969 #: ../source/TortoiseGit_en.xml:2396
1970 msgid "When you've set up SSL to make your repository more secure, you might want to disable the normal access via non-SSL (http) and only allow https access. To do this, you have to add another directive to the Git <literal><Location></literal> block: <literal>SSLRequireSSL</literal>."
1974 #: ../source/TortoiseGit_en.xml:2403
1976 "An example <literal><Location></literal> block would look like this: <screen>\n"
1977 "<Location /svn>\n"
1979 " SVNParentPath D:\\SVN\n"
1982 " AuthName \"Git repositories\"\n"
1983 " AuthUserFile passwd\n"
1984 " #AuthzSVNAccessFile svnaccessfile\n"
1985 " Require valid-user\n"
1986 "</Location>\n"
1991 #: ../source/TortoiseGit_en.xml:2421
1992 msgid "Using client certificates with virtual SSL hosts"
1996 #: ../source/TortoiseGit_en.xml:2422
1997 msgid "Sent to the TortoiseGit mailing list by Nigel Green. Thanks!"
2001 #: ../source/TortoiseGit_en.xml:2425
2002 msgid "In some server configurations you may need to setup a single server containing 2 virtual SSL hosts: The first one for public web access, with no requirement for a client certificate. The second one to be secure with a required client certificate, running a Git server."
2006 #: ../source/TortoiseGit_en.xml:2431
2007 msgid "Adding an <literal>SSLVerifyClient Optional</literal> directive to the <emphasis>per-server</emphasis> section of the Apache configuration (i.e. outside of any <literal>VirtualHost</literal> and <literal>Directory</literal> blocks) forces Apache to request a client Certificate in the initial SSL handshake. Due to a bug in <literal>mod_ssl</literal> it is essential that the certificate is requested at this point as it does not work if the SSL connection is re-negotiated."
2011 #: ../source/TortoiseGit_en.xml:2441
2013 "The solution is to add the following directive to the virtual host directory that you want to lock down for Git: <screen>\n"
2014 "SSLRequire %{SSL_CLIENT_VERIFY} eq \"SUCCESS\"\n"
2015 "</screen> This directive grants access to the directory only if a client certificate was received and verified successfully."
2019 #: ../source/TortoiseGit_en.xml:2450
2021 "To summarise, the relevant lines of the Apache configuration are: <screen>\n"
2022 "SSLVerifyClient Optional\n"
2024 "### Virtual host configuration for the PUBLIC host \n"
2025 "### (not requiring a certificate)\n"
2027 "<VirtualHost 127.0.0.1:443>\n"
2028 " <Directory \"pathtopublicfileroot\">\n"
2029 " </Directory>\n"
2030 "</VirtualHost>\n"
2032 "### Virtual host configuration for Git \n"
2033 "### (requiring a client certificate)\n"
2034 "<VirtualHost 127.0.0.1:443>\n"
2035 " <Directory \"Git host root path\">\n"
2036 " SSLRequire %{SSL_CLIENT_VERIFY} eq \"SUCCESS\"\n"
2037 " </Directory>\n"
2039 " <Location /svn>\n"
2041 " SVNParentPath /pathtorepository\n"
2042 " </Location>\n"
2043 "</VirtualHost>\n"
2048 #: ../source/TortoiseGit_en.xml:2480
2049 msgid "Svnserve Based Server"
2053 #: ../source/TortoiseGit_en.xml:2486
2054 msgid "There may be situations where it's not possible to use Apache as your server. Fortunately, Git includes Svnserve - a lightweight stand-alone server which uses a custom protocol over an ordinary TCP/IP connection."
2058 #: ../source/TortoiseGit_en.xml:2492
2059 msgid "In most cases svnserve is easier to setup and runs faster than the Apache based server. And now that SASL support is included it is easy to secure as well."
2063 #: ../source/TortoiseGit_en.xml:2499
2064 msgid "Installing svnserve"
2068 #: ../source/TortoiseGit_en.xml:2503
2069 msgid "Get the latest version of Git from <ulink url=\"http://Git.tigris.org/servlets/ProjectDocumentList?folderID=91\"><citetitle>http://Git.tigris.org/servlets/ProjectDocumentList?folderID=91</citetitle></ulink>. Alternatively get a pre-packaged installer from CollabNet at <ulink url=\"http://www.collab.net/downloads/Git\"><citetitle>http://www.collab.net/downloads/Git</citetitle></ulink>. This installer will setup svnserve as a Windows service, and also includes some of the tools you need if you are going to use SASL for security."
2073 #: ../source/TortoiseGit_en.xml:2517
2074 msgid "If you already have a version of Git installed, and svnserve is running, you will need to stop it before continuing."
2078 #: ../source/TortoiseGit_en.xml:2523
2079 msgid "Run the Git installer. If you run the installer on your server (recommended) you can skip step 4."
2083 #: ../source/TortoiseGit_en.xml:2529
2084 msgid "Open the windows-explorer, go to the installation directory of Git (usually <filename>C:\\Program Files\\Git</filename>) and in the <filename>bin</filename> directory, find the files <filename>svnserve.exe</filename>, <filename>intl3_svn.dll</filename>, <filename>libapr.dll</filename>, <filename>libapriconv.dll</filename>, <filename>libapriutil.dll</filename>, <filename>libdb*.dll</filename>, <filename>libeay32.dll</filename> and <filename>ssleay32.dll</filename> - copy these files, or just copy all of the <filename>bin</filename> directory, into a directory on your server e.g. <filename>c:\\svnserve</filename>"
2088 #: ../source/TortoiseGit_en.xml:2551
2089 msgid "Running svnserve"
2093 #: ../source/TortoiseGit_en.xml:2552
2095 "Now that svnserve is installed, you need it running on your server. The simplest approach is to run the following from a DOS shell or create a windows shortcut: <screen>\n"
2096 "svnserve.exe --daemon\n"
2097 "</screen> svnserve will now start waiting for incoming requests on port 3690. The --daemon switch tells svnserve to run as a daemon process, so it will always exist until it is manually terminated."
2101 #: ../source/TortoiseGit_en.xml:2563
2102 msgid "If you have not yet created a repository, follow the instructions given with the Apache server setup <xref linkend=\"tsvn-serversetup-apache-4\"/>."
2106 #: ../source/TortoiseGit_en.xml:2568
2107 msgid "To test that svnserve is working, use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Repo-Browser</guimenuitem></menuchoice> to view a repository."
2111 #: ../source/TortoiseGit_en.xml:2576
2113 "Assuming your repository is located in <filename>c:\\repos\\TestRepo</filename>, and your server is called <filename>localhost</filename>, enter: <screen>\n"
2114 "svn://localhost/repos/TestRepo\n"
2115 "</screen> when prompted by the repo browser."
2119 #: ../source/TortoiseGit_en.xml:2585
2121 "You can also increase security and save time entering URLs with svnserve by using the --root switch to set the root location and restrict access to a specified directory on the server: <screen>\n"
2122 "svnserve.exe --daemon --root drive:\\path\\to\\repository\\root\n"
2123 "</screen> Using the previous test as a guide, svnserve would now run as: <screen>\n"
2124 "svnserve.exe --daemon --root c:\\repos\n"
2125 "</screen> And in TortoiseGit our repo-browser URL is now shortened to: <screen>\n"
2126 "svn://localhost/TestRepo\n"
2127 "</screen> Note that the --root switch is also needed if your repository is located on a different partition or drive than the location of svnserve on your server."
2131 #: ../source/TortoiseGit_en.xml:2604
2132 msgid "Svnserve will service any number of repositories. Just locate them somewhere below the root folder you just defined, and access them using a URL relative to that root."
2136 #: ../source/TortoiseGit_en.xml:2621
2137 msgid "Run svnserve as a Service"
2141 #: ../source/TortoiseGit_en.xml:2625
2142 msgid "Running svnserve as a user is usually not the best way. It means always having a user logged in on your server, and remembering to restart it after a reboot. A better way is to run svnserve as a windows service. Starting with Git 1.4, svnserve can be installed as a native windows service."
2146 #: ../source/TortoiseGit_en.xml:2632
2148 "To install svnserve as a native windows service, execute the following command all on one line to create a service which is automatically started when windows starts. <screen>\n"
2149 "sc create svnserve binpath= \"c:\\svnserve\\svnserve.exe --service \n"
2150 " --root c:\\repos\" displayname= \"Git\" depend= tcpip \n"
2152 "</screen> If any of the paths include spaces, you have to use (escaped) quotes around the path, like this: <screen>\n"
2153 "sc create svnserve binpath= \"\n"
2154 " \\\"C:\\Program Files\\Git\\bin\\svnserve.exe\\\"\n"
2155 " --service --root c:\\repos\" displayname= \"Git\" \n"
2156 " depend= tcpip start= auto\n"
2157 "</screen> You can also add a description after creating the service. This will show up in the Windows Services Manager. <screen>\n"
2158 "sc description svnserve \"Git server (svnserve)\"\n"
2163 #: ../source/TortoiseGit_en.xml:2655
2164 msgid "Note the rather unusual command line format used by <literal>sc</literal>. In the <literal>key= value</literal> pairs there must be no space between the key and the <literal>=</literal> but there must be a space before the value."
2168 #: ../source/TortoiseGit_en.xml:2662
2170 "Microsoft now recommend services to be run as under either the Local Service or Network Service account. Refer to <ulink url=\"http://www.microsoft.com/technet/security/topics/serversecurity/serviceaccount/default.mspx\"><citetitle>The Services and Service Accounts Security Planning Guide</citetitle></ulink>. To create the service under the Local Service account, append the following to the example above. <screen>\n"
2171 "obj= \"NT AUTHORITY\\LocalService\"\n"
2172 "</screen> Note that you would have to give the Local Service account appropriate rights to both Git and your repositories, as well as any applications which are used by hook scripts. The built-in group for this is called \"LOCAL SERVICE\"."
2176 #: ../source/TortoiseGit_en.xml:2679
2177 msgid "Once you have installed the service, you need to go to the services manager to start it (this time only; it will start automatically when the server reboots)."
2181 #: ../source/TortoiseGit_en.xml:2684
2182 msgid "For more detailed information, refer to <ulink url=\"http://svn.collab.net/repos/svn/trunk/notes/windows-service.txt\"><citetitle>Windows Service Support for Svnserve</citetitle></ulink>."
2186 #: ../source/TortoiseGit_en.xml:2690
2188 "If you installed an earlier version of svnserve using the <literal>SVNService</literal> wrapper, and you now want to use the native support instead, you will need to unregister the wrapper as a service (remember to stop the service first!). Simply use the command <screen>\n"
2189 "svnservice -remove\n"
2190 "</screen> to remove the service registry entry."
2194 #: ../source/TortoiseGit_en.xml:2704
2195 msgid "Basic Authentication with svnserve"
2199 #: ../source/TortoiseGit_en.xml:2705
2200 msgid "The default svnserve setup provides anonymous read-only access. This means that you can use an <literal>svn://</literal> URL to checkout and update, or use the repo-browser in TortoiseGit to view the repository, but you won't be able to commit any changes."
2204 #: ../source/TortoiseGit_en.xml:2711
2205 msgid "To enable write access to a repository, you need to edit the <filename>conf/svnserve.conf</filename> file in your repository directory. This file controls the configuration of the svnserve daemon, and also contains useful documentation."
2209 #: ../source/TortoiseGit_en.xml:2717
2211 "You can enable anonymous write access by simply setting: <screen>\n"
2213 "anon-access = write\n"
2214 "</screen> However, you will not know who has made changes to a repository, as the <literal>svn:author</literal> property will be empty. You will also be unable to control who makes changes to a repository. This is a somewhat risky setup!"
2218 #: ../source/TortoiseGit_en.xml:2728
2220 "One way to overcome this is to create a password database: <screen>\n"
2222 "anon-access = none\n"
2223 "auth-access = write\n"
2224 "password-db = userfile\n"
2225 "</screen> Where <filename>userfile</filename> is a file which exists in the same directory as <filename>svnserve.conf</filename>. This file can live elsewhere in your file system (useful for when you have multiple repositories which require the same access rights) and may be referenced using an absolute path, or a path relative to the <filename>conf</filename> directory. If you include a path, it must be written <filename>/the/unix/way</filename>. Using \\ or drive letters will not work. The <filename>userfile</filename> should have a structure of: <screen>\n"
2227 "username = password\n"
2229 "</screen> This example would deny all access for unauthenticated (anonymous) users, and give read-write access to users listed in <filename>userfile</filename>."
2233 #: ../source/TortoiseGit_en.xml:2756
2234 msgid "If you maintain multiple repositories using the same password database, the use of an authentication realm will make life easier for users, as TortoiseGit can cache your credentials so that you only have to enter them once. More information can be found in the Git book, specifically in the sections <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.serverconfig.svnserve.html#svn.serverconfig.svnserve.auth.users\"><citetitle>Create a 'users' file and realm</citetitle></ulink> and <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.serverconfig.netmodel.html#svn.serverconfig.netmodel.credcache\"><citetitle>Client Credentials Caching</citetitle></ulink>"
2238 #: ../source/TortoiseGit_en.xml:2774
2239 msgid "Better Security with SASL"
2243 #: ../source/TortoiseGit_en.xml:2776
2248 #: ../source/TortoiseGit_en.xml:2779
2249 msgid "What is SASL?"
2253 #: ../source/TortoiseGit_en.xml:2780
2254 msgid "The Cyrus Simple Authentication and Security Layer is open source software written by Carnegie Mellon University. It adds generic authentication and encryption capabilities to any network protocol, and as of Git 1.5 and later, both the svnserve server and TortoiseGit client know how to make use of this library."
2258 #: ../source/TortoiseGit_en.xml:2788
2259 msgid "For a more complete discussion of the options available, you should look at the Git book in the section <ulink url=\"http://svnbook.red-bean.com/nightly/en/svn.serverconfig.svnserve.html#svn.serverconfig.svnserve.sasl\"><citetitle>Using svnserve with SASL</citetitle></ulink>. If you are just looking for a simple way to set up secure authentication and encryption on a Windows server, so that your repository can be accessed safely over the big bad Internet, read on."
2263 #: ../source/TortoiseGit_en.xml:2801
2264 msgid "SASL Authentication"
2268 #: ../source/TortoiseGit_en.xml:2802
2270 "To activate specific SASL mechanisms on the server, you'll need to do three things. First, create a <literal>[sasl]</literal> section in your repository's <filename>svnserve.conf</filename> file, with this key-value pair: <screen>\n"
2276 #: ../source/TortoiseGit_en.xml:2811
2277 msgid "Second, create a file called <filename>svn.conf</filename> in a convenient location - typically in the directory where Git is installed."
2281 #: ../source/TortoiseGit_en.xml:2816
2282 msgid "Thirdly, create two new registry entries to tell SASL where to find things. Create a registry key named <literal>[HKEY_LOCAL_MACHINE\\SOFTWARE\\Carnegie Mellon\\Project Cyrus\\SASL Library]</literal> and place two new string values inside it: <literal>SearchPath</literal> set to the directory path containing the <filename>sasl*.dll</filename> plug-ins (normally in the Git install directory), and <literal>ConfFile</literal> set to the directory containing the <filename>svn.conf</filename> file. If you used the CollabNet installer, these registry keys will already have been created for you."
2286 #: ../source/TortoiseGit_en.xml:2828
2288 "Edit the <filename>svn.conf</filename> file to contain the following: <screen>\n"
2289 "pwcheck_method: auxprop\n"
2290 "auxprop_plugin: sasldb\n"
2291 "mech_list: DIGEST-MD5\n"
2292 "sasldb_path: C:\\TortoiseGit\\sasldb\n"
2293 "</screen> The last line shows the location of the authentication database, which is a file called <filename>sasldb</filename>. This could go anywhere, but a convenient choice is the repository parent path. Make sure that the svnserve service has read access to this file."
2297 #: ../source/TortoiseGit_en.xml:2843
2298 msgid "If svnserve was already running, you will need to restart it to ensure it reads the updated configuration."
2302 #: ../source/TortoiseGit_en.xml:2847
2304 "Now that everything is set up, all you need to do is create some users and passwords. To do this you need the <literal>saslpasswd2</literal> program. If you used the CollabNet installer, that program will be in the install directory. Use a command something like this: <screen>\n"
2305 "saslpasswd2 -c -f C:\\TortoiseGit\\sasldb -u realm username\n"
2306 "</screen> The <literal>-f</literal> switch gives the database location, <literal>realm</literal> must be the same as the value you defined in your repository's <filename>svnserve.conf</filename> file, and username is exactly what you expect it to be. Note that the realm is not allowed to contain space characters."
2310 #: ../source/TortoiseGit_en.xml:2862
2311 msgid "You can list the usernames stored in the database using the <literal>sasldblistusers2</literal> program."
2315 #: ../source/TortoiseGit_en.xml:2868
2316 msgid "SASL Encryption"
2320 #: ../source/TortoiseGit_en.xml:2869
2322 "To enable or disable different levels of encryption, you can set two values in your repository's <filename>svnserve.conf</filename> file: <screen>\n"
2325 "min-encryption = 128\n"
2326 "max-encryption = 256\n"
2331 #: ../source/TortoiseGit_en.xml:2880
2332 msgid "The <literal>min-encryption</literal> and <literal>max-encryption</literal> variables control the level of encryption demanded by the server. To disable encryption completely, set both values to 0. To enable simple checksumming of data (i.e., prevent tampering and guarantee data integrity without encryption), set both values to 1. If you wish to allow (but not require) encryption, set the minimum value to 0, and the maximum value to some bit-length. To require encryption unconditionally, set both values to numbers greater than 1. In our previous example, we require clients to do at least 128-bit encryption, but no more than 256-bit encryption."
2336 #: ../source/TortoiseGit_en.xml:2897
2337 msgid "Authentication with svn+ssh"
2341 #: ../source/TortoiseGit_en.xml:2898
2342 msgid "Another way to authenticate users with a svnserve based server is to use a secure shell (SSH) to tunnel requests through. It is not as simple to set up as SASL, but it may be useful is some cases."
2346 #: ../source/TortoiseGit_en.xml:2904
2347 msgid "With this approach, svnserve is not run as a daemon process, rather, the secure shell starts svnserve for you, running it as the SSH authenticated user. To enable this, you need a secure shell daemon on your server."
2351 #: ../source/TortoiseGit_en.xml:2910
2352 msgid "A basic method for setting up your server is given in <xref linkend=\"tsvn-ssh-howto\"/>. You can find other SSH topics within the FAQ by searching for <quote>SSH</quote>."
2356 #: ../source/TortoiseGit_en.xml:2916
2357 msgid "Further information about svnserve can be found in the <ulink url=\"http://svnbook.red-bean.com\"><citetitle>Version Control with Git</citetitle></ulink>."
2361 #: ../source/TortoiseGit_en.xml:2924
2362 msgid "Path-based Authorization with svnserve"
2366 #: ../source/TortoiseGit_en.xml:2925
2368 "Starting with Git 1.3, svnserve supports the same <literal>mod_authz_svn</literal> path-based authorization scheme that is available with the Apache server. You need to edit the <filename>conf/svnserve.conf</filename> file in your repository directory and add a line referring to your authorization file. <screen>\n"
2370 "authz-db = authz\n"
2371 "</screen> Here, <filename>authz</filename> is a file you create to define the access permissions. You can use a separate file for each repository, or you can use the same file for several repositories. Read <xref linkend=\"tsvn-serversetup-mod_authz_svn\"/> for a description of the file format."
2375 #: ../source/TortoiseGit_en.xml:2947
2376 msgid "No matter which protocol you use to access your repositories, you always need to create at least one repository. This can either be done with the Git command line client or with TortoiseGit."
2380 #: ../source/TortoiseGit_en.xml:2952
2381 msgid "If you haven't created a Git repository yet, it's time to do that now."
2385 #: ../source/TortoiseGit_en.xml:2960
2386 msgid "Repository Creation"
2390 #: ../source/TortoiseGit_en.xml:2962
2391 msgid "create repository"
2395 #: ../source/TortoiseGit_en.xml:2964
2396 msgid "You can create a repository with the FSFS backend or with the older Berkeley Database (BDB) format. The FSFS format is generally faster and easier to administer, and it works on network shares and Windows 98 without problems. The BDB format was once considered more stable simply because it has been in use for longer, but since FSFS has now been in use in the field for several years, that argument is now rather weak. Read <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.reposadmin.planning.html#svn.reposadmin.basics.backends\"><citetitle>Choosing a Data Store</citetitle></ulink> in the Git book for more information."
2400 #: ../source/TortoiseGit_en.xml:2979
2401 msgid "Creating a Repository with the Command Line Client"
2406 #: ../source/TortoiseGit_en.xml:2981
2407 #: ../source/TortoiseGit_en.xml:3022
2412 #: ../source/TortoiseGit_en.xml:2982
2413 msgid "Command Line Client"
2417 #: ../source/TortoiseGit_en.xml:2986
2418 msgid "Create an empty folder with the name SVN (e.g. <filename>D:\\SVN\\</filename>), which is used as root for all your repositories."
2422 #: ../source/TortoiseGit_en.xml:2993
2423 msgid "Create another folder <filename>MyNewRepository</filename> inside <filename>D:\\SVN\\</filename>."
2427 #: ../source/TortoiseGit_en.xml:3000
2429 "Open the command prompt (or DOS-Box), change into <filename>D:\\SVN\\</filename> and type <screen>\n"
2430 "svnadmin create --fs-type bdb MyNewRepository\n"
2431 "</screen> or <screen>\n"
2432 "svnadmin create --fs-type fsfs MyNewRepository\n"
2437 #: ../source/TortoiseGit_en.xml:3013
2438 msgid "Now you've got a new repository located at <filename>D:\\SVN\\MyNewRepository</filename>."
2442 #: ../source/TortoiseGit_en.xml:3020
2443 msgid "Creating The Repository With TortoiseGit"
2447 #: ../source/TortoiseGit_en.xml:3027
2448 msgid "The TortoiseGit menu for unversioned folders"
2452 #: ../source/TortoiseGit_en.xml:3032
2453 msgid "Open the windows explorer"
2457 #: ../source/TortoiseGit_en.xml:3037
2458 msgid "Create a new folder and name it e.g. <filename>SVNRepository</filename>"
2462 #: ../source/TortoiseGit_en.xml:3043
2463 msgid "<action>Right-click</action> on the newly created folder and select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Create Repository here...</guimenuitem></menuchoice>."
2467 #: ../source/TortoiseGit_en.xml:3051
2468 msgid "A repository is then created inside the new folder. <emphasis>Don't edit those files yourself!!!</emphasis>. If you get any errors make sure that the folder is empty and not write protected."
2472 #: ../source/TortoiseGit_en.xml:3060
2473 msgid "TortoiseGit no longer offers the option to create BDB repositories, although you can still use the command line client to create them. FSFS repositories are generally easier for you to maintain, and also makes it easier for us to maintain TortoiseGit due to compatibility issues between the different BDB versions."
2477 #: ../source/TortoiseGit_en.xml:3067
2478 msgid "Future versions of TortoiseGit will not support <literal>file://</literal> access to BDB repositories due to these compatibility issues, although it will of course always support this repository format when accessed via a server through the <literal>svn://</literal>, <literal>http://</literal> or <literal>https://</literal> protocols. For this reason, we strongly recommend that any new repository which must be accessed using <literal>file://</literal> protocol is created as FSFS."
2482 #: ../source/TortoiseGit_en.xml:3079
2483 msgid "Of course we also recommend that you don't use <literal>file://</literal> access at all, apart from local testing purposes. Using a server is more secure and more reliable for all but single-developer use."
2487 #: ../source/TortoiseGit_en.xml:3088
2488 msgid "Local Access to the Repository"
2492 #: ../source/TortoiseGit_en.xml:3090
2497 #: ../source/TortoiseGit_en.xml:3093
2502 #: ../source/TortoiseGit_en.xml:3095
2503 msgid "To access your local repository you need the path to that folder. Just remember that Git expects all repository paths in the form <systemitem class=\"url\">file:///C:/SVNRepository/</systemitem>. Note the use of forward slashes throughout."
2507 #: ../source/TortoiseGit_en.xml:3101
2508 msgid "To access a repository located on a network share you can either use drive mapping, or you can use the UNC path. For UNC paths, the form is <systemitem class=\"url\">file://ServerName/path/to/repos/</systemitem>. Note that there are only 2 leading slashes here."
2512 #: ../source/TortoiseGit_en.xml:3108
2513 msgid "Prior to SVN 1.2, UNC paths had to be given in the more obscure form <systemitem class=\"url\">file:///\\ServerName/path/to/repos</systemitem>. This form is still supported, but not recommended."
2517 #: ../source/TortoiseGit_en.xml:3115
2518 msgid "Do not create or access a Berkeley DB repository on a network share. It <emphasis>cannot</emphasis> exist on a remote file system. Not even if you have the network drive mapped to a drive letter. If you attempt to use Berkeley DB on a network share, the results are unpredictable - you may see mysterious errors right away, or it may be months before you discover that your repository database is subtly corrupted."
2522 #: ../source/TortoiseGit_en.xml:3126
2523 msgid "Accessing a Repository on a Network Share"
2527 #: ../source/TortoiseGit_en.xml:3128
2528 msgid "Network share"
2532 #: ../source/TortoiseGit_en.xml:3130
2533 msgid "Although in theory it is possible to put a FSFS repository on a network share and have multiple users access it using <literal>file://</literal> protocol, this is most definitely <emphasis>not</emphasis> recommended. In fact we would <emphasis>strongly</emphasis> discourage it, and do not support such use."
2537 #: ../source/TortoiseGit_en.xml:3137
2538 msgid "Firstly you are giving every user direct write access to the repository, so any user could accidentally delete the entire repository or make it unusable in some other way."
2542 #: ../source/TortoiseGit_en.xml:3142
2543 msgid "Secondly not all network file sharing protocols support the locking that Git requires, so you may find your repository gets corrupted. It may not happen straight away, but one day two users will try to access the repository at the same time."
2547 #: ../source/TortoiseGit_en.xml:3148
2548 msgid "Thirdly the file permissions have to be set just so. You may just about get away with it on a native Windows share, but SAMBA is particularly difficult."
2552 #: ../source/TortoiseGit_en.xml:3153
2553 msgid "<literal>file://</literal> access is intended for local, single-user access only, particularly testing and debugging. When you want to share the repository you <emphasis>really</emphasis> need to set up a proper server, and it is not nearly as difficult as you might think. Read <xref linkend=\"tsvn-serversetup\"/> for guidelines on choosing and setting up a server."
2557 #: ../source/TortoiseGit_en.xml:3163
2558 msgid "Repository Layout"
2562 #: ../source/TortoiseGit_en.xml:3164
2563 msgid "Before you import your data into the repository you should first think about how you want to organize your data. If you use one of the recommended layouts you will later have it much easier."
2567 #: ../source/TortoiseGit_en.xml:3170
2568 msgid "There are some standard, recommended ways to organize a repository. Most people create a <filename>trunk</filename> directory to hold the <quote>main line</quote> of development, a <filename>branches</filename> directory to contain branch copies, and a <filename>tags</filename> directory to contain tag copies. If a repository holds only one project, then often people create these top-level directories:"
2572 #: ../source/TortoiseGit_en.xml:3179
2582 #: ../source/TortoiseGit_en.xml:3184
2583 msgid "If a repository contains multiple projects, people often index their layout by branch:"
2587 #: ../source/TortoiseGit_en.xml:3188
2600 #: ../source/TortoiseGit_en.xml:3196
2601 msgid "...or by project:"
2605 #: ../source/TortoiseGit_en.xml:3199
2618 #: ../source/TortoiseGit_en.xml:3207
2619 msgid "Indexing by project makes sense if the projects are not closely related and each one is checked out individually. For related projects where you may want to check out all projects in one go, or where the projects are all tied together in a single distribution package, it is often better to index by branch. This way you have only one trunk to checkout, and the relationships between the sub-projects is more easily visible."
2623 #: ../source/TortoiseGit_en.xml:3215
2624 msgid "If you adopt a top level <filename>/trunk /tags /branches</filename> approach, there is nothing to say that you have to copy the entire trunk for every branch and tag, and in some ways this structure offers the most flexibility."
2628 #: ../source/TortoiseGit_en.xml:3221
2629 msgid "For unrelated projects you may prefer to use separate repositories. When you commit changes, it is the revision number of the whole repository which changes, not the revision number of the project. Having 2 unrelated projects share a repository can mean large gaps in the revision numbers. The Git and TortoiseGit projects appear at the same host address, but are completely separate repositories allowing independent development, and no confusion over build numbers."
2633 #: ../source/TortoiseGit_en.xml:3231
2634 msgid "Of course, you're free to ignore these common layouts. You can create any sort of variation, whatever works best for you or your team. Remember that whatever you choose, it's not a permanent commitment. You can reorganize your repository at any time. Because branches and tags are ordinary directories, TortoiseGit can move or rename them however you wish."
2638 #: ../source/TortoiseGit_en.xml:3239
2639 msgid "Switching from one layout to another is just a matter of issuing a series of server-side moves; If you don't like the way things are organized in the repository, just juggle the directories around."
2643 #: ../source/TortoiseGit_en.xml:3256
2644 msgid "create a new empty folder on your hard drive"
2648 #: ../source/TortoiseGit_en.xml:3261
2649 msgid "create your desired top-level folder structure inside that folder - don't put any files in it yet!"
2653 #: ../source/TortoiseGit_en.xml:3267
2654 msgid "import this structure into the repository via a <action>right click</action> on the folder and selecting <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Import...</guimenuitem></menuchoice> This will import your temp folder into the repository root to create the basic repository layout."
2658 #: ../source/TortoiseGit_en.xml:3245
2659 msgid "So if you haven't already created a basic folder structure inside your repository you should do that now. There are two ways to achieve this. If you simply want to create a <filename>/trunk /tags /branches</filename> structure, you can use the repository browser to create the three folders (in three separate commits). If you want to create a deeper hierarchy then it is simpler to create a folder structure on disk first and import it in a single commit, like this: <placeholder-1/>"
2663 #: ../source/TortoiseGit_en.xml:3282
2665 "Note that the name of the folder you are importing does not appear in the repository, only its contents. For example, create the following folder structure: <screen>\n"
2666 "C:\\Temp\\New\\trunk\n"
2667 "C:\\Temp\\New\\branches\n"
2668 "C:\\Temp\\New\\tags\n"
2669 "</screen> Import <filename>C:\\Temp\\New</filename> into the repository root, which will then look like this: <screen>\n"
2677 #: ../source/TortoiseGit_en.xml:3302
2678 msgid "Repository Backup"
2682 #: ../source/TortoiseGit_en.xml:3304
2687 #: ../source/TortoiseGit_en.xml:3306
2688 msgid "Whichever type of repository you use, it is vitally important that you maintain regular backups, and that you verify the backup. If the server fails, you may be able to access a recent version of your files, but without the repository all your history is lost forever."
2692 #: ../source/TortoiseGit_en.xml:3313
2693 msgid "The simplest (but not recommended) way is just to copy the repository folder onto the backup medium. However, you have to be absolutely sure that no process is accessing the data. In this context, access means <emphasis>any</emphasis> access at all. A BDB repository is written to even when the operation only appears to require reading, such as getting status. If your repository is accessed at all during the copy, (web browser left open, WebSVN, etc.) the backup will be worthless."
2697 #: ../source/TortoiseGit_en.xml:3323
2699 "The recommended method is to run <screen>\n"
2700 "svnadmin hotcopy path/to/repository path/to/backup --clean-logs\n"
2701 "</screen> to create a copy of your repository in a safe manner. Then backup the copy. The <literal>--clean-logs</literal> option is not required, but removes any redundant log files when you backup a BDB repository, which may save some space."
2705 #: ../source/TortoiseGit_en.xml:3333
2706 msgid "The <literal>svnadmin</literal> tool is installed automatically when you install the Git command line client. If you are installing the command line tools on a Windows PC, the best way is to download the Windows installer version. It is compressed more efficiently than the <filename>.zip</filename> version, so the download is smaller, and it takes care of setting the paths for you. You can download the latest version of the Git command line client from <ulink url=\"http://Git.tigris.org/servlets/ProjectDocumentList?folderID=91\"><citetitle>http://Git.tigris.org/servlets/ProjectDocumentList?folderID=91</citetitle></ulink>."
2710 #: ../source/TortoiseGit_en.xml:3348
2711 msgid "Hook Scripts"
2715 #: ../source/TortoiseGit_en.xml:3350
2721 #: ../source/TortoiseGit_en.xml:3353
2722 #: ../source/TortoiseGit_en.xml:11804
2723 msgid "hook scripts"
2727 #: ../source/TortoiseGit_en.xml:3356
2728 msgid "server side hook scripts"
2732 #: ../source/TortoiseGit_en.xml:3358
2733 msgid "A hook script is a program triggered by some repository event, such as the creation of a new revision or the modification of an unversioned property. Each hook is handed enough information to tell what that event is, what target(s) it's operating on, and the username of the person who triggered the event. Depending on the hook's output or return status, the hook program may continue the action, stop it, or suspend it in some way. Please refer to the chapter on <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.reposadmin.create.html#svn.reposadmin.create.hooks\"><citetitle>Hook Scripts</citetitle></ulink> in the Git Book for full details about the hooks which are implemented."
2737 #: ../source/TortoiseGit_en.xml:3373
2738 msgid "These hook scripts are executed by the server that hosts the repository. TortoiseGit also allows you to configure client side hook scripts that are executed locally upon certain events. See <xref linkend=\"tsvn-dug-settings-hooks\"/> for more information."
2742 #: ../source/TortoiseGit_en.xml:3379
2744 "Sample hook scripts can be found in the <filename>hooks</filename> directory of the repository. These sample scripts are suitable for Unix/Linux servers but need to be modified if your server is Windows based. The hook can be a batch file or an executable. The sample below shows a batch file which might be used to implement a pre-revprop-change hook. <screen>\n"
2745 "rem Only allow log messages to be changed.\n"
2746 "if \"%4\" == \"svn:log\" exit 0\n"
2747 "echo Property '%4' cannot be changed >&2\n"
2749 "</screen> Note that anything sent to stdout is discarded. if you want a message to appear in the Commit Reject dialog you must send it to stderr. In a batch file this is achieved using <filename>>&2</filename>"
2753 #: ../source/TortoiseGit_en.xml:3399
2754 msgid "Checkout Links"
2758 #: ../source/TortoiseGit_en.xml:3401
2759 msgid "checkout link"
2763 #: ../source/TortoiseGit_en.xml:3404
2764 msgid "TortoiseGit link"
2768 #: ../source/TortoiseGit_en.xml:3407
2773 #: ../source/TortoiseGit_en.xml:3410
2778 #: ../source/TortoiseGit_en.xml:3412
2779 msgid "If you want to make your Git repository available to others you may want to include a link to it from your website. One way to make this more accessible is to include a <firstterm>checkout link</firstterm> for other TortoiseGit users."
2783 #: ../source/TortoiseGit_en.xml:3418
2784 msgid "When you install TortoiseGit, it registers a new <literal>tsvn:</literal> protocol. When a TortoiseGit user clicks on such a link, the checkout dialog will open automatically with the repository URL already filled in."
2788 #: ../source/TortoiseGit_en.xml:3427
2792 "<a href=\"tsvn:https://TortoiseGit.tigris.org/svn/TortoiseGit/trunk\">\n"
2797 #: ../source/TortoiseGit_en.xml:3424
2798 msgid "To include such a link in your own html page, you need to add code which looks something like this: <placeholder-1/>"
2802 #: ../source/TortoiseGit_en.xml:3439
2806 "<a href=\"tsvn:https://TortoiseGit.tigris.org/svn/TortoiseGit/trunk\">\n"
2807 "<img src=TortoiseCheckout.png></a>\n"
2811 #: ../source/TortoiseGit_en.xml:3432
2812 msgid "Of course it would look even better if you included a suitable picture. You can use the <ulink url=\"http://TortoiseGit.tigris.org/images/TortoiseCheckout.png\"><citetitle>TortoiseGit logo</citetitle></ulink> or you can provide your own image. <placeholder-1/>"
2816 #: ../source/TortoiseGit_en.xml:3447
2817 msgid "Daily Use Guide"
2821 #: ../source/TortoiseGit_en.xml:3451
2822 msgid "This document describes day to day usage of the TortoiseGit client. It is <emphasis>not</emphasis> an introduction to version control systems, and <emphasis>not</emphasis> an introduction to Git (SVN). It is more like a place you may turn to when you know approximately what you want to do, but don't quite remember how to do it."
2826 #: ../source/TortoiseGit_en.xml:3459
2827 msgid "If you need an introduction to version control with Git, then we recommend you read the fantastic book: <ulink url=\"http://svnbook.red-bean.com/\"><citetitle>Version Control with Git</citetitle></ulink>."
2831 #: ../source/TortoiseGit_en.xml:3466
2832 msgid "This document is also a work in progress, just as TortoiseGit and Git are. If you find any mistakes, please report them to the mailing list so we can update the documentation. Some of the screenshots in the Daily Use Guide (DUG) might not reflect the current state of the software. Please forgive us. We're working on TortoiseGit in our free time."
2836 #: ../source/TortoiseGit_en.xml:3478
2837 msgid "You should have installed TortoiseGit already."
2841 #: ../source/TortoiseGit_en.xml:3483
2842 msgid "You should be familiar with version control systems."
2846 #: ../source/TortoiseGit_en.xml:3488
2847 msgid "You should know the basics of Git."
2851 #: ../source/TortoiseGit_en.xml:3493
2852 msgid "You should have set up a server and/or have access to a Git repository."
2856 #: ../source/TortoiseGit_en.xml:3474
2857 msgid "In order to get the most out of the Daily Use Guide: <placeholder-1/>"
2861 #: ../source/TortoiseGit_en.xml:3504
2862 msgid "Getting Started"
2868 #: ../source/TortoiseGit_en.xml:3506
2869 #: ../source/TortoiseGit_en.xml:4940
2870 #: ../source/TortoiseGit_en.xml:14802
2871 msgid "Icon Overlays"
2876 #: ../source/TortoiseGit_en.xml:3509
2877 #: ../source/TortoiseGit_en.xml:4949
2878 msgid "Explorer showing icon overlays"
2882 #: ../source/TortoiseGit_en.xml:3507
2883 msgid "<placeholder-1/> One of the most visible features of TortoiseGit is the icon overlays which appear on files in your working copy. These show you at a glance which of your files have been modified. Refer to <xref linkend=\"tsvn-dug-wcstatus-1\"/> to find out what the different overlays represent."
2887 #: ../source/TortoiseGit_en.xml:3520
2888 msgid "Context Menus"
2892 #: ../source/TortoiseGit_en.xml:3522
2893 msgid "context menu"
2897 #: ../source/TortoiseGit_en.xml:3525
2902 #: ../source/TortoiseGit_en.xml:3529
2903 msgid "Context menu for a directory under version control"
2907 #: ../source/TortoiseGit_en.xml:3527
2908 msgid "<placeholder-1/> All TortoiseGit commands are invoked from the context menu of the windows explorer. Most are directly visible, when you <action>right click</action> on a file or folder. The commands that are available depend on whether the file or folder or its parent folder is under version control or not. You can also see the TortoiseGit menu as part of the Explorer file menu."
2912 #: ../source/TortoiseGit_en.xml:3539
2913 msgid "Some commands which are very rarely used are only available in the extended context menu. To bring up the extended context menu, hold down the <keycap>Shift</keycap> key when you <action>right-click</action>."
2917 #: ../source/TortoiseGit_en.xml:3548
2918 msgid "Explorer file menu for a shortcut in a versioned folder"
2922 #: ../source/TortoiseGit_en.xml:3545
2923 msgid "In some cases you may see several TortoiseGit entries. This is not a bug! <placeholder-1/> This example is for an unversioned shortcut within a versioned folder, and in the Explorer file menu there are <emphasis>three</emphasis> entries for TortoiseGit. One is for the folder, one for the shortcut itself, and the third for the object the shortcut is pointing to. To help you distinguish between them, the icons have an indicator in the lower right corner to show whether the menu entry is for a file, a folder, a shortcut or for multiple selected items."
2927 #: ../source/TortoiseGit_en.xml:3559
2928 msgid "If you are using Windows 2000 you will find that the context menus are shown as plain text, without the menu icons shown above. We are aware that this was working in previous versions, but Microsoft has changed the way its icon handlers work for Vista, requiring us to use a different display method which unfortunately does not work on Windows 2000."
2933 #: ../source/TortoiseGit_en.xml:3568
2934 #: ../source/TortoiseGit_en.xml:4425
2935 msgid "Drag and Drop"
2939 #: ../source/TortoiseGit_en.xml:3570
2940 msgid "drag handler"
2944 #: ../source/TortoiseGit_en.xml:3573
2949 #: ../source/TortoiseGit_en.xml:3576
2955 #: ../source/TortoiseGit_en.xml:3580
2956 #: ../source/TortoiseGit_en.xml:6707
2957 msgid "Right drag menu for a directory under version control"
2961 #: ../source/TortoiseGit_en.xml:3578
2962 msgid "<placeholder-1/> Other commands are available as drag handlers, when you <action>right drag</action> files or folders to a new location inside working copies or when you <action>right drag</action> a non-versioned file or folder into a directory which is under version control."
2966 #: ../source/TortoiseGit_en.xml:3590
2967 msgid "Common Shortcuts"
2971 #: ../source/TortoiseGit_en.xml:3597
2976 #: ../source/TortoiseGit_en.xml:3599
2977 msgid "Help, of course."
2981 #: ../source/TortoiseGit_en.xml:3605
2986 #: ../source/TortoiseGit_en.xml:3607
2987 msgid "Refresh the current view. This is perhaps the single most useful one-key command. For example ... In Explorer this will refresh the icon overlays on your working copy. In the commit dialog it will re-scan the working copy to see what may need to be committed. In the Revision Log dialog it will contact the repository again to check for more recent changes."
2991 #: ../source/TortoiseGit_en.xml:3619
2996 #: ../source/TortoiseGit_en.xml:3621
2997 msgid "Select all. This can be used if you get an error message and want to copy and paste into an email. Use Ctrl-A to select the error message and then ..."
3001 #: ../source/TortoiseGit_en.xml:3629
3006 #: ../source/TortoiseGit_en.xml:3631
3007 msgid "... Copy the selected text."
3011 #: ../source/TortoiseGit_en.xml:3591
3012 msgid "Some common operations have well-known Windows shortcuts, but do not appear on buttons or in menus. If you can't work out how to do something obvious, like refreshing a view, check here. <placeholder-1/>"
3016 #: ../source/TortoiseGit_en.xml:3642
3017 msgid "authentication"
3021 #: ../source/TortoiseGit_en.xml:3648
3022 msgid "Authentication Dialog"
3026 #: ../source/TortoiseGit_en.xml:3656
3027 msgid "<filename>svn.simple</filename> contains credentials for basic authentication (username/password)."
3031 #: ../source/TortoiseGit_en.xml:3662
3032 msgid "<filename>svn.ssl.server</filename> contains SSL server certificates."
3036 #: ../source/TortoiseGit_en.xml:3668
3037 msgid "<filename>svn.username</filename> contains credentials for username-only authentication (no password needed)."
3041 #: ../source/TortoiseGit_en.xml:3644
3042 msgid "If the repository that you are trying to access is password protected, an authentication Dialog will show up. <placeholder-1/> Enter your username and password. The checkbox will make TortoiseGit store the credentials in Git's default directory: <filename>%APPDATA%\\Git\\auth</filename> in three subdirectories: <placeholder-2/>"
3046 #: ../source/TortoiseGit_en.xml:3675
3047 msgid "If you want to clear the authentication cache for all servers, you can do so from the <guilabel>Saved Data</guilabel> page of TortoiseGit's settings dialog. That button will clear all cached authentication data from the Git <filename>auth</filename> directories, as well as any authentication data stored in the registry by earlier versions of TortoiseGit. Refer to <xref linkend=\"tsvn-dug-settings-saved-data\"/>."
3051 #: ../source/TortoiseGit_en.xml:3684
3052 msgid "For more information on how to set up your server for authentication and access control, refer to <xref linkend=\"tsvn-serversetup\"/>"
3056 #: ../source/TortoiseGit_en.xml:3691
3057 msgid "Maximizing Windows"
3061 #: ../source/TortoiseGit_en.xml:3693
3066 #: ../source/TortoiseGit_en.xml:3695
3067 msgid "Many of TortoiseGit's dialogs have a lot of information to display, but it is often useful to maximize only the height, or only the width, rather than maximizing to fill the screen. As a convenience, there are shortcuts for this on the <guilabel>Maximize</guilabel> button. Use the <action>middle mouse</action> button to maximize vertically, and <action>right mouse</action> to maximize horizontally."
3071 #: ../source/TortoiseGit_en.xml:3706
3072 msgid "Importing Data Into A Repository"
3076 #: ../source/TortoiseGit_en.xml:3708
3081 #: ../source/TortoiseGit_en.xml:3714
3082 msgid "add files to repository"
3089 #: ../source/TortoiseGit_en.xml:3718
3090 #: ../source/TortoiseGit_en.xml:13573
3091 #: ../source/TortoiseGit_en.xml:14733
3092 #: ../source/TortoiseGit_en.xml:15487
3097 #: ../source/TortoiseGit_en.xml:3720
3098 msgid "temporary files"
3102 #: ../source/TortoiseGit_en.xml:3722
3103 msgid "If you are importing into an existing repository which already contains some projects, then the repository structure will already have been decided. If are importing data into a new repository then it is worth taking the time to think about how it will be organised. Read <xref linkend=\"tsvn-repository-layout\"/> for further advice."
3107 #: ../source/TortoiseGit_en.xml:3736
3108 msgid "There is no way to select files and folders to include, aside from using the global ignore settings."
3112 #: ../source/TortoiseGit_en.xml:3742
3113 msgid "The folder imported does not become a working copy. You have to do a checkout to copy the files back from the server."
3117 #: ../source/TortoiseGit_en.xml:3748
3118 msgid "It is easy to import to the wrong folder level in the repository."
3122 #: ../source/TortoiseGit_en.xml:3730
3123 msgid "This section describes the Git import command, which was designed for importing a directory hierarchy into the repository in one shot. Although it does the job, it has several shortcomings: <placeholder-1/> For these reasons we recommend that you do not use the import command at all but rather follow the two-step method described in <xref linkend=\"tsvn-dug-import-in-place\"/>. But since you are here, this is how the basic import works ..."
3127 #: ../source/TortoiseGit_en.xml:3762
3128 msgid "Remove all files which are not needed to build the project (temporary files, files which are generated by a compiler e.g. *.obj, compiled binaries, ...)"
3132 #: ../source/TortoiseGit_en.xml:3770
3133 msgid "Organize the files in folders and sub-folders. Although it is possible to rename/move files later it is highly recommended to get your project's structure straight before importing!"
3137 #: ../source/TortoiseGit_en.xml:3758
3138 msgid "Before you import your project into a repository you should: <placeholder-1/>"
3142 #: ../source/TortoiseGit_en.xml:3790
3143 msgid "The Import dialog"
3147 #: ../source/TortoiseGit_en.xml:3779
3148 msgid "Now select the top-level folder of your project directory structure in the windows explorer and <action>right click</action> to open the context menu. Select the command <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Import...</guimenuitem></menuchoice> which brings up a dialog box: <placeholder-1/>"
3152 #: ../source/TortoiseGit_en.xml:3794
3154 "In this dialog you have to enter the URL of the repository location where you want to import your project. It is very important to realise that the local folder you are importing does not itself appear in the repository, only its content. For example if you have a structure: <screen>\n"
3155 "C:\\Projects\\Widget\\source\n"
3156 "C:\\Projects\\Widget\\doc\n"
3157 "C:\\Projects\\Widget\\images\n"
3158 "</screen> and you import <filename>C:\\Projects\\Widget</filename> into <systemitem class=\"url\">http://mydomain.com/svn/trunk</systemitem> then you may be surprised to find that your subdirectories go straight into <literal>trunk</literal> rather than being in a <literal>Widget</literal> subdirectory. You need to specify the subdirectory as part of the URL, <systemitem class=\"url\">http://mydomain.com/svn/trunk/Widget-X</systemitem>. Note that the import command will automatically create subdirectories within the repository if they do not exist."
3162 #: ../source/TortoiseGit_en.xml:3815
3163 msgid "The import message is used as a log message."
3167 #: ../source/TortoiseGit_en.xml:3818
3168 msgid "By default, files and folders which match the global-ignore patterns are <emphasis>not</emphasis> imported. To override this behaviour you can use the <guilabel>Include ignored files</guilabel> checkbox. Refer to <xref linkend=\"tsvn-dug-settings-main\"/> for more information on setting a global ignore pattern."
3172 #: ../source/TortoiseGit_en.xml:3825
3173 msgid "As soon as you press <guibutton>OK</guibutton> TortoiseGit imports the complete directory tree including all files into the repository. The project is now stored in the repository under version control. Please note that the folder you imported is <emphasis>NOT</emphasis> under version control! To get a version-controlled <firstterm>working copy</firstterm> you need to do a Checkout of the version you just imported. Or read on to find out how to import a folder in place."
3177 #: ../source/TortoiseGit_en.xml:3837
3178 msgid "Import in Place"
3182 #: ../source/TortoiseGit_en.xml:3839
3183 msgid "import in place"
3187 #: ../source/TortoiseGit_en.xml:3846
3188 msgid "Use the repository browser to create a new project folder directly in the repository."
3192 #: ../source/TortoiseGit_en.xml:3852
3193 msgid "Checkout the new folder over the top of the folder you want to import. You will get a warning that the local folder is not empty. Now you have a versioned top level folder with unversioned content."
3197 #: ../source/TortoiseGit_en.xml:3859
3198 msgid "Use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Add...</guimenuitem></menuchoice> on this versioned folder to add some or all of the content. You can add and remove files, set <literal>svn:ignore</literal> properties on folders and make any other changes you need to."
3202 #: ../source/TortoiseGit_en.xml:3871
3203 msgid "Commit the top level folder, and you have a new versioned tree, and a local working copy, created from your existing folder."
3207 #: ../source/TortoiseGit_en.xml:3841
3208 msgid "Assuming you already have a repository, and you want to add a new folder structure to it, just follow these steps: <placeholder-1/>"
3212 #: ../source/TortoiseGit_en.xml:3880
3213 msgid "Special Files"
3217 #: ../source/TortoiseGit_en.xml:3882
3218 msgid "special files"
3222 #: ../source/TortoiseGit_en.xml:3884
3223 msgid "Sometimes you need to have a file under version control which contains user specific data. That means you have a file which every developer/user needs to modify to suit his/her local setup. But versioning such a file is difficult because every user would commit his/her changes every time to the repository."
3227 #: ../source/TortoiseGit_en.xml:3891
3228 msgid "In such cases we suggest to use <emphasis>template</emphasis> files. You create a file which contains all the data your developers will need, add that file to version control and let the developers check this file out. Then, each developer has to <emphasis>make a copy</emphasis> of that file and rename that copy. After that, modifying the copy is not a problem anymore."
3232 #: ../source/TortoiseGit_en.xml:3899
3233 msgid "As an example, you can have a look at TortoiseGit's build script. It calls a file named <filename>TortoiseVars.bat</filename> which doesn't exist in the repository. Only the file <filename>TortoiseVars.tmpl</filename>. <filename>TortoiseVars.tmpl</filename> is the template file which every developer has to create a copy from and rename that file to <filename>TortoiseVars.bat</filename>. Inside that file, we added comments so that the users will see which lines they have to edit and change according to their local setup to get it working."
3237 #: ../source/TortoiseGit_en.xml:3910
3238 msgid "So as not to disturb the users, we also added the file <filename>TortoiseVars.bat</filename> to the ignore list of its parent folder, i.e. we've set the Git property <literal>svn:ignore</literal> to include that filename. That way it won't show up as unversioned on every commit."
3242 #: ../source/TortoiseGit_en.xml:3919
3243 msgid "Referenced Projects"
3247 #: ../source/TortoiseGit_en.xml:3921
3248 msgid "external repositories"
3253 #: ../source/TortoiseGit_en.xml:3924
3254 #: ../source/TortoiseGit_en.xml:13155
3259 #: ../source/TortoiseGit_en.xml:3926
3260 msgid "Sometimes it is useful to construct a working copy that is made out of a number of different checkouts. For example, you may want different subdirectories to come from different locations in a repository, or perhaps from different repositories altogether. If you want every user to have the same layout, you can define the <literal>svn:externals</literal> properties."
3264 #: ../source/TortoiseGit_en.xml:3934
3266 "Let's say you check out a working copy of <filename>/project1</filename> to <filename>D:\\dev\\project1</filename>. Select the folder <filename>D:\\dev\\project1</filename>, <action>right click</action> and choose <menuchoice><guimenu>Windows Menu</guimenu><guimenuitem>Properties</guimenuitem></menuchoice> from the context menu. The Properties Dialog comes up. Then go to the Git tab. There, you can set properties. Click <guibutton>Add...</guibutton>. Select the <literal>svn:externals</literal> property from the combobox and write in the edit box the repository URL in the format <literal>name url</literal> or if you want to specify a particular revision, <literal>name -rREV url</literal> You can add multiple external projects, 1 per line. Note that URLs must be properly escaped or they will not work. For example you must replace each space with <literal>%20</literal>. Note that it is not possible to use folder names with spaces in them. Suppose that you have set these properties on <filename>D:\\dev\\project1</filename>: <screen>\n"
3267 "sounds http://sounds.red-bean.com/repos\n"
3268 "quick_graphs http://graphics.red-bean.com/repos/fast%20graphics\n"
3269 "skins/toolkit -r21 http://svn.red-bean.com/repos/skin-maker\n"
3270 "</screen> Now click <guibutton>Set</guibutton> and commit your changes. When you (or any other user) update your working copy, Git will create a sub-folder <filename>D:\\dev\\project1\\sounds</filename> and checkout the sounds project, another sub-folder <filename>D:\\dev\\project1\\quick graphs</filename> containing the graphics project, and finally a nested sub-folder <filename>D:\\dev\\project1\\skins\\toolkit</filename> containing revision 21 of the skin-maker project."
3274 #: ../source/TortoiseGit_en.xml:3974
3275 msgid "You should strongly consider using explicit revision numbers in all of your externals definitions, as described above. Doing so means that you get to decide when to pull down a different snapshot of external information, and exactly which snapshot to pull. Besides the common sense aspect of not being surprised by changes to third-party repositories that you might not have any control over, using explicit revision numbers also means that as you backdate your working copy to a previous revision, your externals definitions will also revert to the way they looked in that previous revision, which in turn means that the external working copies will be updated to match they way <emphasis>they</emphasis> looked back when your repository was at that previous revision. For software projects, this could be the difference between a successful and a failed build of an older snapshot of your complex code base."
3280 #: ../source/TortoiseGit_en.xml:3993
3281 #: ../source/TortoiseGit_en.xml:13187
3282 msgid "If the external project is in the same repository, any changes you make there there will be included in the commit list when you commit your main project."
3287 #: ../source/TortoiseGit_en.xml:3998
3288 #: ../source/TortoiseGit_en.xml:13192
3289 msgid "If the external project is in a different repository, any changes you make to the external project will be notified when you commit the main project, but you have to commit those external changes separately."
3293 #: ../source/TortoiseGit_en.xml:4004
3294 msgid "If you use absolute URLs in <literal>svn:externals</literal> definitions and you have to relocate your working copy (i.e., if the URL of your repository changes), then your externals won't change and might not work anymore."
3298 #: ../source/TortoiseGit_en.xml:4010
3299 msgid "To avoid such problems, Git clients version 1.5 and higher support relative external URLs. Four different methods of specifying a relative URL are supported. In the following examples, assume we have two repositories: one at <systemitem class=\"url\">http://example.com/svn/repos-1</systemitem> and another at <systemitem class=\"url\">http://example.com/svn/repos-2</systemitem>. We have a checkout of <systemitem class=\"url\">http://example.com/svn/repos-1/project/trunk</systemitem> into <filename>C:\\Working</filename> and the <literal>svn:externals</literal> property is set on trunk."
3303 #: ../source/TortoiseGit_en.xml:4025
3304 msgid "Relative to parent directory"
3308 #: ../source/TortoiseGit_en.xml:4027
3310 "These URLs always begin with the string <literal>../</literal> for example: <screen>\n"
3311 "../../widgets/foo common/foo-widget\n"
3312 "</screen> This will extract <systemitem class=\"url\">http://example.com/svn/repos-1/widgets/foo</systemitem> into <filename>C:\\Working\\common\\foo-widget</filename>."
3316 #: ../source/TortoiseGit_en.xml:4038
3317 msgid "Note that the URL is relative to the URL of the directory with the <literal>svn:externals</literal> property, not to the directory where the external is written to disk."
3321 #: ../source/TortoiseGit_en.xml:4046
3322 msgid "Relative to repository root"
3326 #: ../source/TortoiseGit_en.xml:4048
3328 "These URLs always begin with the string <literal>^/</literal> for example: <screen>\n"
3329 "^/widgets/foo common/foo-widget\n"
3330 "</screen> This will extract <systemitem class=\"url\">http://example.com/svn/repos-1/widgets/foo</systemitem> into <filename>C:\\Working\\common\\foo-widget</filename>."
3334 #: ../source/TortoiseGit_en.xml:4059
3336 "You can easily refer to other repositories with the same <literal>SVNParentPath</literal> (a common directory holding several repositories). For example: <screen>\n"
3337 "^/../repos-2/hammers/claw common/claw-hammer\n"
3338 "</screen> This will extract <systemitem class=\"url\">http://example.com/svn/repos-2/hammers/claw</systemitem> into <filename>C:\\Working\\common\\claw-hammer</filename>."
3342 #: ../source/TortoiseGit_en.xml:4074
3343 msgid "Relative to scheme"
3347 #: ../source/TortoiseGit_en.xml:4076
3349 "URLs beginning with the string <literal>//</literal> copy only the scheme part of the URL. This is useful when the same hostname must the accessed with different schemes depending upon network location; e.g. clients in the intranet use <systemitem class=\"url\">http://</systemitem> while external clients use <systemitem class=\"url\">svn+ssh://</systemitem>. For example: <screen>\n"
3350 "//example.com/svn/repos-1/widgets/foo common/foo-widget\n"
3351 "</screen> This will extract <systemitem class=\"url\">http://example.com/svn/repos-1/widgets/foo</systemitem> or <systemitem class=\"url\">svn+ssh://example.com/svn/repos-1/widgets/foo</systemitem> depending on which method was used to checkout <filename>C:\\Working</filename>."
3355 #: ../source/TortoiseGit_en.xml:4096
3356 msgid "Relative to the server's hostname"
3360 #: ../source/TortoiseGit_en.xml:4098
3362 "URLs beginning with the string <literal>/</literal> copy the scheme and the hostname part of the URL, for example: <screen>\n"
3363 "/svn/repos-1/widgets/foo common/foo-widget\n"
3364 "</screen> This will extract <systemitem class=\"url\">http://example.com/svn/repos-1/widgets/foo</systemitem> into <filename>C:\\Working\\common\\foo-widget</filename>. But if you checkout your working copy from another server at <systemitem class=\"url\">svn+ssh://another.mirror.net/svn/repos-1/project1/trunk</systemitem> then the external reference will extract <systemitem class=\"url\">svn+ssh://another.mirror.net/svn/repos-1/widgets/foo</systemitem>."
3368 #: ../source/TortoiseGit_en.xml:4116
3369 msgid "If you need more information how TortoiseGit handles Properties read <xref linkend=\"tsvn-dug-propertypage\"/>."
3373 #: ../source/TortoiseGit_en.xml:4120
3374 msgid "To find out about different methods of accessing common sub-projects read <xref linkend=\"tsvn-howto-common-projects\"/>."
3378 #: ../source/TortoiseGit_en.xml:4127
3379 msgid "Checking Out A Working Copy"
3383 #: ../source/TortoiseGit_en.xml:4129
3388 #: ../source/TortoiseGit_en.xml:4132
3389 msgid "create working copy"
3393 #: ../source/TortoiseGit_en.xml:4135
3394 msgid "To obtain a working copy you need to do a <firstterm>checkout</firstterm> from a repository."
3398 #: ../source/TortoiseGit_en.xml:4149
3399 msgid "The Checkout dialog"
3403 #: ../source/TortoiseGit_en.xml:4139
3404 msgid "Select a directory in windows explorer where you want to place your working copy. <action>Right click</action> to pop up the context menu and select the command <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Checkout...</guimenuitem></menuchoice>, which brings up the following dialog box: <placeholder-1/> If you enter a folder name that does not yet exist, then a directory with that name is created."
3408 #: ../source/TortoiseGit_en.xml:4156
3409 msgid "Checkout Depth"
3413 #: ../source/TortoiseGit_en.xml:4164
3414 msgid "Fully recursive"
3418 #: ../source/TortoiseGit_en.xml:4166
3419 msgid "Checkout the entire tree, including all child folders and sub-folders."
3423 #: ../source/TortoiseGit_en.xml:4173
3424 msgid "Immediate children, including folders"
3428 #: ../source/TortoiseGit_en.xml:4175
3429 msgid "Checkout the specified directory, including all files and child folders, but do not populate the child folders."
3433 #: ../source/TortoiseGit_en.xml:4182
3434 msgid "Only file children"
3438 #: ../source/TortoiseGit_en.xml:4184
3439 msgid "Checkout the specified directory, including all files but do not checkout any child folders."
3443 #: ../source/TortoiseGit_en.xml:4191
3444 msgid "Only this item"
3448 #: ../source/TortoiseGit_en.xml:4193
3449 msgid "Checkout the directory only. Do not populate it with files or child folders."
3455 #: ../source/TortoiseGit_en.xml:4200
3456 #: ../source/TortoiseGit_en.xml:7933
3457 #: ../source/TortoiseGit_en.xml:14650
3458 msgid "Working copy"
3462 #: ../source/TortoiseGit_en.xml:4202
3463 msgid "Retain the depth specified in the working copy. This option is not used in the checkout dialog, but it is the default in all other dialogs which have a depth setting."
3467 #: ../source/TortoiseGit_en.xml:4157
3468 msgid "You can choose the <firstterm>depth</firstterm> you want to checkout, which allows you to specify the depth of recursion into child folders. If you want just a few sections of a large tree, You can checkout the top level folder only, then update selected folders recursively. <placeholder-1/>"
3472 #: ../source/TortoiseGit_en.xml:4212
3473 msgid "If you check out a sparse working copy (i.e., by choosing something other than <literal>fully recursive</literal> for the checkout depth), you can fetch additional sub-folders by using the repository browser (<xref linkend=\"tsvn-dug-repobrowser\"/>) or the check for modifications dialog (<xref linkend=\"tsvn-dug-wcstatus-2\"/>)."
3477 #: ../source/TortoiseGit_en.xml:4219
3478 msgid "In the repository browser, <action>Right click</action> on the checked out folder, then use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Repo-Browser</guimenuitem></menuchoice> to bring up the repository browser. Find the sub-folder you would like to add to your working copy, then use <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Update item to revision...</guimenuitem></menuchoice> That menu will only be visible if the selected item does not exist yet in your working copy, but the parent item does exist."
3482 #: ../source/TortoiseGit_en.xml:4235
3483 msgid "In the check for modifications dialog, first click on the button <guibutton>Check repository</guibutton>. The dialog will show all the files and folders which are in the repository but which you have not checked out as <literal>remotely added</literal>. <action>Right click</action> on the folder(s) you would like to add to your working copy, then use <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Update</guimenuitem></menuchoice>."
3487 #: ../source/TortoiseGit_en.xml:4248
3488 msgid "If the project contains references to external projects which you do <emphasis>not</emphasis> want checked out at the same time, use the <guilabel>Omit externals</guilabel> checkbox."
3492 #: ../source/TortoiseGit_en.xml:4254
3493 msgid "If <guilabel>Omit externals</guilabel> is checked, or if you wish to increase the depth value, you will have to perform updates to your working copy using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Update to Revision...</guimenuitem></menuchoice> instead of <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Update</guimenuitem></menuchoice>. The standard update will include all externals and keep the existing depth."
3497 #: ../source/TortoiseGit_en.xml:4270
3498 msgid "It is recommended that you check out only the <literal>trunk</literal> part of the directory tree, or lower. If you specify the parent path of the directory tree in the URL then you might end up with a full hard disk since you will get a copy of the entire repository tree including every branch and tag of your project!"
3502 #: ../source/TortoiseGit_en.xml:4278
3507 #: ../source/TortoiseGit_en.xml:4279
3508 msgid "Sometimes you may want to create a local copy without any of those <filename>.svn</filename> directories, e.g. to create a zipped tarball of your source. Read <xref linkend=\"tsvn-dug-export\"/> to find out how to do that."
3512 #: ../source/TortoiseGit_en.xml:4288
3513 msgid "Committing Your Changes To The Repository"
3517 #: ../source/TortoiseGit_en.xml:4290
3522 #: ../source/TortoiseGit_en.xml:4293
3523 msgid "send changes"
3527 #: ../source/TortoiseGit_en.xml:4296
3532 #: ../source/TortoiseGit_en.xml:4299
3533 msgid "Sending the changes you made to your working copy is known as <firstterm>committing</firstterm> the changes. But before you commit you have to make sure that your working copy is up to date. You can either use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Update</guimenuitem></menuchoice> directly. Or you can use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Check for Modifications</guimenuitem></menuchoice> first, to see which files have changed locally or on the server."
3537 #: ../source/TortoiseGit_en.xml:4316
3538 msgid "The Commit Dialog"
3542 #: ../source/TortoiseGit_en.xml:4326
3543 msgid "The Commit dialog"
3547 #: ../source/TortoiseGit_en.xml:4317
3548 msgid "If your working copy is up to date and there are no conflicts, you are ready to commit your changes. Select any file and/or folders you want to commit, then <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Commit...</guimenuitem></menuchoice>. <placeholder-1/>"
3552 #: ../source/TortoiseGit_en.xml:4330
3553 msgid "The commit dialog will show you every changed file, including added, deleted and unversioned files. If you don't want a changed file to be committed, just uncheck that file. If you want to include an unversioned file, just check that file to add it to the commit."
3558 #: ../source/TortoiseGit_en.xml:4337
3559 #: ../source/TortoiseGit_en.xml:5171
3560 msgid "Items which have been switched to a different repository path are also indicated using an <literal>(s)</literal> marker. You may have switched something while working on a branch and forgotten to switch back to trunk. This is your warning sign!"
3564 #: ../source/TortoiseGit_en.xml:4344
3565 msgid "Commit files or folders?"
3569 #: ../source/TortoiseGit_en.xml:4345
3570 msgid "When you commit files, the commit dialog shows only the files you have selected. When you commit a folder the commit dialog will select the changed files automatically. If you forget about a new file you created, committing the folder will find it anyway. Committing a folder does <emphasis>not</emphasis> mean that every file gets marked as changed; It just makes your life easier by doing more work for you."
3574 #: ../source/TortoiseGit_en.xml:4355
3575 msgid "If you have modified files which have been included from a different repository using <literal>svn:externals</literal>, those changes cannot be included in the same atomic commit. A warning symbol below the file list tells you if this has happened, and the tooltip explains that those external files have to be committed separately."
3579 #: ../source/TortoiseGit_en.xml:4363
3580 msgid "Many unversioned files in the commit dialog"
3584 #: ../source/TortoiseGit_en.xml:4370
3585 msgid "add the file (or a wildcard extension) to the list of files to exclude on the settings page. This will affect every working copy you have."
3589 #: ../source/TortoiseGit_en.xml:4377
3590 msgid "add the file to the <literal>svn:ignore</literal> list using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Add to ignore list</guimenuitem></menuchoice> This will only affect the directory on which you set the <literal>svn:ignore</literal> property. Using the SVN Property Dialog, you can alter the <literal>svn:ignore</literal> property for a directory."
3594 #: ../source/TortoiseGit_en.xml:4364
3595 msgid "If you think that the commit dialog shows you too many unversioned (e.g. compiler generated or editor backup) files, there are several ways to handle this. You can: <placeholder-1/> Read <xref linkend=\"tsvn-dug-ignore\"/> for more information."
3599 #: ../source/TortoiseGit_en.xml:4394
3600 msgid "<action>Double clicking</action> on any modified file in the commit dialog will launch the external diff tool to show your changes. The context menu will give you more options, as shown in the screenshot. You can also drag files from here into another application such as a text editor or an IDE."
3604 #: ../source/TortoiseGit_en.xml:4401
3605 msgid "You can select or deselect items by clicking on the checkbox to the left of the item. For directories you can use <keycap>Shift</keycap>-<action>select</action> to make the action recursive."
3609 #: ../source/TortoiseGit_en.xml:4406
3610 msgid "The columns displayed in the bottom pane are customizable. If you <action>right click</action> on any column header you will see a context menu allowing you to select which columns are displayed. You can also change column width by using the drag handle which appears when you move the mouse over a column boundary. These customizations are preserved, so you will see the same headings next time."
3614 #: ../source/TortoiseGit_en.xml:4415
3615 msgid "By default when you commit changes, any locks that you hold on files are released automatically after the commit succeeds. If you want to keep those locks, make sure the <guilabel>Keep locks</guilabel> checkbox is checked. The default state of this checkbox is taken from the <literal>no_unlock</literal> option in the Git configuration file. Read <xref linkend=\"tsvn-dug-settings-main\"/> for information on how to edit the Git configuration file."
3619 #: ../source/TortoiseGit_en.xml:4426
3620 msgid "You can drag files into the commit dialog from elsewhere, so long as the working copies are checked out from the same repository. For example, you may have a huge working copy with several explorer windows open to look at distant folders of the hierarchy. If you want to avoid committing from the top level folder (with a lengthy folder crawl to check for changes) you can open the commit dialog for one folder and drag in items from the other windows to include within the same atomic commit."
3624 #: ../source/TortoiseGit_en.xml:4436
3625 msgid "You can drag unversioned files which reside within a working copy into the commit dialog, and they will be SVN added automatically."
3630 #: ../source/TortoiseGit_en.xml:4442
3631 #: ../source/TortoiseGit_en.xml:5243
3632 msgid "Repairing External Renames"
3637 #: ../source/TortoiseGit_en.xml:4443
3638 #: ../source/TortoiseGit_en.xml:5244
3639 msgid "Sometimes files get renamed outside of Git, and they show up in the file list as a missing file and an unversioned file. To avoid losing the history you need to notify Git about the connection. Simply select both the old name (missing) and the new name (unversioned) and use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Repair Move</guimenuitem></menuchoice> to pair the two files as a rename."
3644 #: ../source/TortoiseGit_en.xml:4458
3645 #: ../source/TortoiseGit_en.xml:5289
3646 msgid "Change Lists"
3650 #: ../source/TortoiseGit_en.xml:4459
3651 msgid "The commit dialog supports Git's changelist feature to help with grouping related files together. Find out about this feature in <xref linkend=\"tsvn-dug-changelists\"/>."
3655 #: ../source/TortoiseGit_en.xml:4466
3656 msgid "Excluding Items from the Commit List"
3660 #: ../source/TortoiseGit_en.xml:4467
3661 msgid "Sometimes you have versioned files that change frequently but that you really don't want to commit. Sometimes this indicates a flaw in your build process - why are those files versioned? should you be using template files? But occasionally it is inevitable. A classic reason is that your IDE changes a timestamp in the project file every time you build. The project file has to be versioned as it includes all the build settings, but it doesn't need to be committed just because the timestamp changed."
3665 #: ../source/TortoiseGit_en.xml:4477
3666 msgid "To help out in awkward cases like this, we have reserved a changelist called <literal>ignore-on-commit</literal>. Any file added to this changelist will automatically be unchecked in the commit dialog. You can still commit changes, but you have to select it manually in the commit dialog."
3670 #: ../source/TortoiseGit_en.xml:4486
3671 msgid "Commit Log Messages"
3675 #: ../source/TortoiseGit_en.xml:4487
3676 msgid "Be sure to enter a log message which describes the changes you are committing. This will help you to see what happened and when, as you browse through the project log messages at a later date. The message can be as long or as brief as you like; many projects have guidelines for what should be included, the language to use, and sometimes even a strict format."
3680 #: ../source/TortoiseGit_en.xml:4495
3681 msgid "You can apply simple formatting to your log messages using a convention similar to that used within emails. To apply styling to <literal>text</literal>, use <literal>*text*</literal> for bold, <literal>_text_</literal> for underlining, and <literal>^text^</literal> for italics."
3685 #: ../source/TortoiseGit_en.xml:4505
3686 msgid "The Commit Dialog Spellchecker"
3690 #: ../source/TortoiseGit_en.xml:4503
3691 msgid "<placeholder-1/> TortoiseGit includes a spellchecker to help you get your log messages right. This will highlight any mis-spelled words. Use the context menu to access the suggested corrections. Of course, it doesn't know <emphasis>every</emphasis> technical term that you do, so correctly spelt words will sometimes show up as errors. But don't worry. You can just add them to your personal dictionary using the context menu."
3695 #: ../source/TortoiseGit_en.xml:4515
3696 msgid "The log message window also includes a filename and function auto-completion facility. This uses regular expressions to extract class and function names from the (text) files you are committing, as well as the filenames themselves. If a word you are typing matches anything in the list (after you have typed at least 3 characters, or pressed <keycap>Ctrl+Space</keycap>), a drop-down appears allowing you to select the full name. The regular expressions supplied with TortoiseGit are held in the TortoiseGit installation <filename>bin</filename> folder. You can also define your own regexes and store them in <filename>%APPDATA%\\TortoiseGit\\autolist.txt</filename>. Of course your private autolist will not be overwritten when you update your installation of TortoiseGit. If you are unfamiliar with regular expressions, take a look at the introduction at <ulink url=\"http://en.wikipedia.org/wiki/Regular_expression\"><citetitle>http://en.wikipedia.org/wiki/Regular_expression</citetitle></ulink>, and the online documentation and tutorial at <ulink url=\"http://www.regular-expressions.info/\"><citetitle>http://www.regular-expressions.info/</citetitle></ulink>."
3700 #: ../source/TortoiseGit_en.xml:4536
3701 msgid "You can re-use previously entered log messages. Just click on <guibutton>Recent messages</guibutton> to view a list of the last few messages you entered for this working copy. The number of stored messages can be customized in the TortoiseGit settings dialog."
3705 #: ../source/TortoiseGit_en.xml:4542
3706 msgid "You can clear all stored commit messages from the <guilabel>Saved data</guilabel> page of TortoiseGit's settings, or you can clear individual messages from within the <guilabel>Recent messages</guilabel> dialog using the <keycap>Delete</keycap> key."
3710 #: ../source/TortoiseGit_en.xml:4549
3711 msgid "Special Folder Properties"
3715 #: ../source/TortoiseGit_en.xml:4550
3716 msgid "There are several special folder properties which can be used to help give more control over the formatting of commit log messages and the language used by the spellchecker module. Read <xref linkend=\"tsvn-dug-propertypage\"/> for further information."
3720 #: ../source/TortoiseGit_en.xml:4558
3721 msgid "Integration with Bug Tracking Tools"
3725 #: ../source/TortoiseGit_en.xml:4559
3726 msgid "If you have activated the bug tracking system, you can set one or more Issues in the <guilabel>Bug-ID / Issue-Nr:</guilabel> text box. Multiple issues should be comma separated. Alternatively, if you are using regex-based bug tracking support, just add your issue references as part of the log message. Learn more in <xref linkend=\"tsvn-dug-bugtracker\"/>."
3730 #: ../source/TortoiseGit_en.xml:4570
3731 msgid "Commit Progress"
3735 #: ../source/TortoiseGit_en.xml:4575
3736 msgid "The Progress dialog showing a commit in progress"
3740 #: ../source/TortoiseGit_en.xml:4571
3741 msgid "After pressing <guibutton>OK</guibutton>, a dialog appears displaying the progress of the commit. <placeholder-1/>"
3746 #: ../source/TortoiseGit_en.xml:4584
3747 #: ../source/TortoiseGit_en.xml:5109
3752 #: ../source/TortoiseGit_en.xml:4586
3753 msgid "Committing a modification."
3759 #: ../source/TortoiseGit_en.xml:4592
3760 #: ../source/TortoiseGit_en.xml:4659
3761 #: ../source/TortoiseGit_en.xml:5117
3766 #: ../source/TortoiseGit_en.xml:4594
3767 msgid "Committing a new addition."
3773 #: ../source/TortoiseGit_en.xml:4600
3774 #: ../source/TortoiseGit_en.xml:4667
3775 #: ../source/TortoiseGit_en.xml:5129
3780 #: ../source/TortoiseGit_en.xml:4602
3781 msgid "Committing a deletion or a replacement."
3787 #: ../source/TortoiseGit_en.xml:4608
3788 #: ../source/TortoiseGit_en.xml:4694
3789 #: ../source/TortoiseGit_en.xml:5157
3794 #: ../source/TortoiseGit_en.xml:4610
3795 msgid "All other items."
3799 #: ../source/TortoiseGit_en.xml:4579
3800 msgid "The progress dialog uses colour coding to highlight different commit actions <placeholder-1/>"
3806 #: ../source/TortoiseGit_en.xml:4617
3807 #: ../source/TortoiseGit_en.xml:4704
3808 #: ../source/TortoiseGit_en.xml:5166
3809 msgid "This is the default colour scheme, but you can customise those colours using the settings dialog. Read <xref linkend=\"tsvn-dug-settings-colours\"/> for more information."
3813 #: ../source/TortoiseGit_en.xml:4625
3814 msgid "Update Your Working Copy With Changes From Others"
3819 #: ../source/TortoiseGit_en.xml:4627
3820 #: ../source/TortoiseGit_en.xml:12914
3825 #: ../source/TortoiseGit_en.xml:4630
3826 msgid "fetch changes"
3830 #: ../source/TortoiseGit_en.xml:4634
3831 msgid "Progress dialog showing finished update"
3835 #: ../source/TortoiseGit_en.xml:4632
3836 msgid "<placeholder-1/> Periodically, you should ensure that changes done by others get incorporated in your local working copy. The process of getting changes from the server to your local copy is known as <emphasis>updating</emphasis>. Updating may be done on single files, a set of selected files, or recursively on entire directory hierarchies. To update, select the files and/or directories you want, <action>right click</action> and select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Update</guimenuitem></menuchoice> in the explorer context menu. A window will pop up displaying the progress of the update as it runs. Changes done by others will be merged into your files, keeping any changes you may have done to the same files. The repository is <emphasis>not</emphasis> affected by an update."
3840 #: ../source/TortoiseGit_en.xml:4661
3841 msgid "New item added to your WC."
3845 #: ../source/TortoiseGit_en.xml:4669
3846 msgid "Redundant item deleted from your WC, or missing item replaced in your WC."
3851 #: ../source/TortoiseGit_en.xml:4676
3852 #: ../source/TortoiseGit_en.xml:5137
3857 #: ../source/TortoiseGit_en.xml:4678
3858 msgid "Changes from repository successfully merged with your local changes."
3863 #: ../source/TortoiseGit_en.xml:4685
3864 #: ../source/TortoiseGit_en.xml:5147
3869 #: ../source/TortoiseGit_en.xml:4687
3870 msgid "Changes from repository merged with local changes, resulting in conflicts which you need to resolve."
3874 #: ../source/TortoiseGit_en.xml:4696
3875 msgid "Unchanged item in your WC updated with newer version from the repository."
3879 #: ../source/TortoiseGit_en.xml:4654
3880 msgid "The progress dialog uses colour coding to highlight different update actions <placeholder-1/>"
3884 #: ../source/TortoiseGit_en.xml:4709
3885 msgid "If you get any <emphasis>conflicts</emphasis> during an update (this can happen if others changed the same lines in the same file as you did and those changes don't match) then the dialog shows those conflicts in red. You can <action>double click</action> on these lines to start the external merge tool to resolve the conflicts."
3889 #: ../source/TortoiseGit_en.xml:4716
3890 msgid "When the update is complete, the progress dialog shows a summary of the number of items updated, added, removed, conflicted, etc. below the file list. This summary information can be copied to the clipboard using <keycap>Ctrl+C</keycap>."
3894 #: ../source/TortoiseGit_en.xml:4723
3895 msgid "The standard Update command has no options and just updates your working copy to the HEAD revision of the repository, which is the most common use case. If you want more control over the update process, you should use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Update to Revision...</guimenuitem></menuchoice> instead. This allows you to update your working copy to a specific revision, not only to the most recent one. Suppose your working copy is at revision 100, but you want it to reflect the state which it had in revision 50 - then simply update to revision 50. In the same dialog you can also choose the <firstterm>depth</firstterm> at which to update the current folder. The terms used are described in <xref linkend=\"tsvn-dug-checkout-depth\"/>. The default depth is <guilabel>Working copy</guilabel>, which preserves the existing depth setting. You can also choose whether to ignore any external projects in the update (i.e. projects referenced using <literal>svn:externals</literal>)."
3899 #: ../source/TortoiseGit_en.xml:4745
3900 msgid "If you update a file or folder to a specific revision, you should not make changes to those files. You will get <quote>out of date</quote> error messages when you try to commit them! If you want to undo changes to a file and start afresh from an earlier revision, you can rollback to a previous revision from the revision log dialog. Take a look at <xref linkend=\"tsvn-howto-rollback\"/> for further instructions, and alternative methods."
3904 #: ../source/TortoiseGit_en.xml:4755
3905 msgid "<menuchoice><guimenuitem>Update to Revision</guimenuitem></menuchoice> can occasionally be useful to see what your project looked like at some earlier point in its history. But in general, updating individual files to an earlier revision is not a good idea as it leaves your working copy in an inconsistent state. If the file you are updating has changed name, you may even find that the file just disappears from your working copy because no file of that name existed in the earlier revision. If you simply want a local copy of an old version of a file it is better to use the <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Save revision to...</guimenuitem></menuchoice> command from the log dialog for that file."
3909 #: ../source/TortoiseGit_en.xml:4774
3910 msgid "Multiple Files/Folders"
3914 #: ../source/TortoiseGit_en.xml:4775
3915 msgid "If you select multiple files and folders in the explorer and then select <menuchoice><guimenuitem>Update</guimenuitem></menuchoice>, all of those files/folders are updated one by one. TortoiseGit makes sure that all files/folders which are from the same repository are updated to the exact same revision! Even if between those updates another commit occurred."
3919 #: ../source/TortoiseGit_en.xml:4787
3920 msgid "Local File Already Exists"
3924 #: ../source/TortoiseGit_en.xml:4788
3925 msgid "Sometimes when you try to update, the update fails with a message to say that there is already a local file of the same name. This typically happens when Git tries to checkout a newly versioned file, and finds that an unversioned file of the same name already exists in your working folder. Git will never overwrite an unversioned file - it might contain something you are working on, which coincidentally has the same filename as another developer has used for his newly committed file."
3929 #: ../source/TortoiseGit_en.xml:4797
3930 msgid "If you get this error message, the solution is simply to rename the local unversioned file. After completing the update, you can check whether the renamed file is still needed."
3934 #: ../source/TortoiseGit_en.xml:4802
3935 msgid "If you keep getting error messages, use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Check for Modifications</guimenuitem></menuchoice> instead to list all the problem files. That way you can deal with them all at once."
3939 #: ../source/TortoiseGit_en.xml:4815
3940 msgid "Resolving Conflicts"
3944 #: ../source/TortoiseGit_en.xml:4820
3949 #: ../source/TortoiseGit_en.xml:4843
3950 msgid "filename.ext.mine"
3954 #: ../source/TortoiseGit_en.xml:4845
3955 msgid "This is your file as it existed in your working copy before you updated your working copy - that is, without conflict markers. This file has your latest changes in it and nothing else."
3959 #: ../source/TortoiseGit_en.xml:4854
3960 msgid "filename.ext.rOLDREV"
3964 #: ../source/TortoiseGit_en.xml:4856
3965 msgid "This is the file that was the BASE revision before you updated your working copy. That is, it the file that you checked out before you made your latest edits."
3969 #: ../source/TortoiseGit_en.xml:4865
3970 msgid "filename.ext.rNEWREV"
3974 #: ../source/TortoiseGit_en.xml:4867
3975 msgid "This is the file that your Git client just received from the server when you updated your working copy. This file corresponds to the HEAD revision of the repository."
3979 #: ../source/TortoiseGit_en.xml:4822
3981 "Once in a while, you will get a <emphasis>conflict</emphasis> when you update your files from the repository. A conflict occurs when two or more developers have changed the same few lines of a file. As Git knows nothing of your project, it leaves resolving the conflicts to the developers. Whenever a conflict is reported, you should open the file in question, and search for lines starting with the string <literal><<<<<<<</literal>. The conflicting area is marked like this: <screen>\n"
3982 "<<<<<<< filename\n"
3985 " code merged from repository\n"
3986 ">>>>>>> revision\n"
3987 "</screen> Also, for every conflicted file Git places three additional files in your directory: <placeholder-1/>"
3991 #: ../source/TortoiseGit_en.xml:4877
3992 msgid "You can either launch an external merge tool / conflict editor with <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Edit Conflicts</guimenuitem></menuchoice> or you can use any other editor to manually resolve the conflict. You should decide what the code should look like, do the necessary changes and save the file."
3996 #: ../source/TortoiseGit_en.xml:4888
3997 msgid "Afterwards execute the command <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Resolved</guimenuitem></menuchoice> and commit your modifications to the repository. Please note that the Resolve command does not really resolve the conflict. It just removes the <filename>filename.ext.mine</filename> and <filename>filename.ext.r*</filename> files, to allow you to commit your changes."
4001 #: ../source/TortoiseGit_en.xml:4901
4002 msgid "If you have conflicts with binary files, Git does not attempt to merge the files itself. The local file remains unchanged (exactly as you last changed it) and you have <filename>filename.ext.r*</filename> files. If you want to discard your changes and keep the repository version, just use the Revert command. If you want to keep your version and overwrite the repository version, use the Resolved command, then commit your version."
4006 #: ../source/TortoiseGit_en.xml:4911
4007 msgid "You can use the Resolved command for multiple files if you right click on the parent folder and select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Resolved...</guimenuitem></menuchoice> This will bring up a dialog listing all conflicted files in that folder, and you can select which ones to mark as resolved."
4011 #: ../source/TortoiseGit_en.xml:4924
4012 msgid "Getting Status Information"
4017 #: ../source/TortoiseGit_en.xml:4926
4018 #: ../source/TortoiseGit_en.xml:5075
4023 #: ../source/TortoiseGit_en.xml:4929
4024 msgid "view changes"
4028 #: ../source/TortoiseGit_en.xml:4932
4029 msgid "working copy status"
4033 #: ../source/TortoiseGit_en.xml:4934
4034 msgid "While you are working on your working copy you often need to know which files you have changed/added/removed or renamed, or even which files got changed and committed by others."
4039 #: ../source/TortoiseGit_en.xml:4942
4040 #: ../source/TortoiseGit_en.xml:14807
4045 #: ../source/TortoiseGit_en.xml:4945
4050 #: ../source/TortoiseGit_en.xml:4953
4051 msgid "Now that you have checked out a working copy from a Git repository you can see your files in the windows explorer with changed icons. This is one of the reasons why TortoiseGit is so popular. TortoiseGit adds a so called overlay icon to each file icon which overlaps the original file icon. Depending on the Git status of the file the overlay icon is different."
4055 #: ../source/TortoiseGit_en.xml:4961
4056 msgid "<graphic fileref=\"../images/InGitIcon.png\"/> A fresh checked out working copy has a green checkmark as overlay. That means the Git status is <emphasis>normal</emphasis>."
4060 #: ../source/TortoiseGit_en.xml:4966
4061 msgid "<graphic fileref=\"../images/ModifiedIcon.png\"/> As soon as you start editing a file, the status changes to <emphasis>modified</emphasis> and the icon overlay then changes to a red exclamation mark. That way you can easily see which files were changed since you last updated your working copy and need to be committed."
4065 #: ../source/TortoiseGit_en.xml:4974
4066 msgid "<graphic fileref=\"../images/ConflictIcon.png\"/> If during an update a <emphasis>conflict</emphasis> occurs then the icon changes to a yellow exclamation mark."
4070 #: ../source/TortoiseGit_en.xml:4979
4071 msgid "<graphic fileref=\"../images/ReadOnlyIcon.png\"/> If you have set the <literal>svn:needs-lock</literal> property on a file, Git makes that file read-only until you get a lock on that file. Such files have this overlay to indicate that you have to get a lock first before you can edit that file."
4075 #: ../source/TortoiseGit_en.xml:4986
4076 msgid "<graphic fileref=\"../images/LockedIcon.png\"/> If you hold a lock on a file, and the Git status is <emphasis>normal</emphasis>, this icon overlay reminds you that you should release the lock if you are not using it to allow others to commit their changes to the file."
4080 #: ../source/TortoiseGit_en.xml:4993
4081 msgid "<graphic fileref=\"../images/DeletedIcon.png\"/> This icon shows you that some files or folders inside the current folder have been scheduled to be <emphasis>deleted</emphasis> from version control or a file under version control is missing in a folder."
4085 #: ../source/TortoiseGit_en.xml:4999
4086 msgid "<graphic fileref=\"../images/AddedIcon.png\"/> The plus sign tells you that a file or folder has been scheduled to be <emphasis>added</emphasis> to version control."
4090 #: ../source/TortoiseGit_en.xml:5004
4091 msgid "<graphic fileref=\"../images/IgnoredIcon.png\"/> The bar sign tells you that a file or folder is <emphasis>ignored</emphasis> for version control purposes. This overlay is optional."
4095 #: ../source/TortoiseGit_en.xml:5010
4096 msgid "<graphic fileref=\"../images/UnversionedIcon.png\"/> This icon shows files and folders which are not under version control, but have not been ignored. This overlay is optional."
4100 #: ../source/TortoiseGit_en.xml:5016
4101 msgid "In fact, you may find that not all of these icons are used on your system. This is because the number of overlays allowed by Windows is very limited and if you are also using an old version of TortoiseCVS, then there are not enough overlay slots available. TortoiseGit tries to be a <quote>Good Citizen (TM)</quote> and limits its use of overlays to give other apps a chance too."
4105 #: ../source/TortoiseGit_en.xml:5024
4106 msgid "Now that there are more Tortoise clients around (TortoiseCVS, TortoiseHG, ...) the icon limit becomes a real problem. To work around this, the TortoiseGit project introduced a common shared icon set, loaded as a DLL, which can be used by all Tortoise clients. Check with your client provider to see if this has been integrated yet :-)"
4110 #: ../source/TortoiseGit_en.xml:5031
4111 msgid "For a description of how icon overlays correspond to Git status and other technical details, read <xref linkend=\"tsvn-app-internals-overlays\"/>."
4115 #: ../source/TortoiseGit_en.xml:5038
4116 msgid "TortoiseGit Columns In Windows Explorer"
4120 #: ../source/TortoiseGit_en.xml:5040
4121 msgid "Explorer Columns"
4125 #: ../source/TortoiseGit_en.xml:5042
4126 msgid "The same information which is available from the icon overlays (and much more) can be displayed as additional columns in Windows Explorer's Details View."
4130 #: ../source/TortoiseGit_en.xml:5047
4131 msgid "Simply right click on one of the headings of a column, choose <guimenuitem>More...</guimenuitem> from the context menu displayed. A dialog will appear where you can specify the columns and their order, which is displayed in the <quote>Detailed View</quote>. Scroll down until the entries starting with SVN come into view. Check the ones you would like to have displayed and close the dialog by pressing <guibutton>OK</guibutton>. The columns will be appended to the right of those currently displayed. You can reorder them by drag and drop, or resize them, so that they fit your needs."
4135 #: ../source/TortoiseGit_en.xml:5059
4136 msgid "The additional columns in the Windows Explorer are not available on Vista, since Microsoft decided to not allow such columns for <emphasis>all</emphasis> files anymore but only for specific file types."
4140 #: ../source/TortoiseGit_en.xml:5065
4141 msgid "If you want the current layout to be displayed in all your working copies, you may want to make this the default view."
4145 #: ../source/TortoiseGit_en.xml:5073
4146 msgid "Local and Remote Status"
4150 #: ../source/TortoiseGit_en.xml:5078
4151 msgid "modifications"
4156 #: ../source/TortoiseGit_en.xml:5082
4157 #: ../source/TortoiseGit_en.xml:14497
4158 msgid "Check for Modifications"
4162 #: ../source/TortoiseGit_en.xml:5080
4163 msgid "<placeholder-1/> It's often very useful to know which files you have changed and also which files got changed and committed by others. That's where the command <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Check For Modifications...</guimenuitem></menuchoice> comes in handy. This dialog will show you every file that has changed in any way in your working copy, as well as any unversioned files you may have."
4167 #: ../source/TortoiseGit_en.xml:5097
4168 msgid "If you click on the <guibutton>Check Repository</guibutton> then you can also look for changes in the repository. That way you can check before an update if there's a possible conflict. You can also update selected files from the repository without updating the whole folder."
4172 #: ../source/TortoiseGit_en.xml:5111
4173 msgid "Locally modified items."
4177 #: ../source/TortoiseGit_en.xml:5119
4178 msgid "Added items. Items which have been added with history have a <literal>+</literal> sign in the <guilabel>Text status</guilabel> column, and a tooltip shows where the item was copied from."
4182 #: ../source/TortoiseGit_en.xml:5131
4183 msgid "Deleted or missing items."
4187 #: ../source/TortoiseGit_en.xml:5139
4188 msgid "Items modified locally and in the repository. The changes will be merged on update. These <emphasis>may</emphasis> produce conflicts on update."
4192 #: ../source/TortoiseGit_en.xml:5149
4193 msgid "Items modified locally and deleted in repository, or modified in repository and deleted locally. These <emphasis>will</emphasis> produce conflicts on update."
4197 #: ../source/TortoiseGit_en.xml:5159
4198 msgid "Unchanged and unversioned items."
4202 #: ../source/TortoiseGit_en.xml:5105
4203 msgid "The dialog uses colour coding to highlight the status. <placeholder-1/>"
4207 #: ../source/TortoiseGit_en.xml:5177
4208 msgid "From the context menu of the dialog you can show a diff of the changes. Check the local changes <emphasis>you</emphasis> made using <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Compare with Base</guimenuitem></menuchoice>. Check the changes in the repository made by others using <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Show Differences as Unified Diff</guimenuitem></menuchoice>."
4212 #: ../source/TortoiseGit_en.xml:5190
4213 msgid "You can also revert changes in individual files. If you have deleted a file accidentally, it will show up as <emphasis>Missing</emphasis> and you can use <emphasis>Revert</emphasis> to recover it."
4217 #: ../source/TortoiseGit_en.xml:5195
4218 msgid "Unversioned and ignored files can be sent to the recycle bin from here using <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Delete</guimenuitem></menuchoice>. If you want to delete files permanently (bypassing the recycle bin) hold the <keycap>Shift</keycap> key while clicking on <guilabel>Delete</guilabel>."
4222 #: ../source/TortoiseGit_en.xml:5204
4223 msgid "If you want to examine a file in detail, you can drag it from here into another application such as a text editor or IDE."
4227 #: ../source/TortoiseGit_en.xml:5208
4228 msgid "The columns are customizable. If you <action>right click</action> on any column header you will see a context menu allowing you to select which columns are displayed. You can also change column width by using the drag handle which appears when you move the mouse over a column boundary. These customizations are preserved, so you will see the same headings next time."
4232 #: ../source/TortoiseGit_en.xml:5217
4233 msgid "If you are working on several unrelated tasks at once, you can also group files together into changelists. Read <xref linkend=\"tsvn-dug-commit-changelists\"/> for more information."
4237 #: ../source/TortoiseGit_en.xml:5222
4238 msgid "At the bottom of the dialog you can see a summary of the range of repository revisions in use in your working copy. These are the <emphasis>commit</emphasis> revisions, not the <emphasis>update</emphasis> revisions; they represent the range of revisions where these files were last committed, not the revisions to which they have been updated. Note that the revision range shown applies only to the items displayed, not to the entire working copy. If you want to see that information for the whole working copy you must check the <guilabel>Show unmodified files</guilabel> checkbox."
4242 #: ../source/TortoiseGit_en.xml:5233
4243 msgid "If you want a flat view of your working copy, i.e. showing all files and folders at every level of the folder hierarchy, then the <guilabel>Check for Modifications</guilabel> dialog is the easiest way to achieve that. Just check the <guilabel>Show unmodified files</guilabel> checkbox to show all files in your working copy."
4247 #: ../source/TortoiseGit_en.xml:5259
4248 msgid "Viewing Diffs"
4252 #: ../source/TortoiseGit_en.xml:5261
4257 #: ../source/TortoiseGit_en.xml:5263
4258 msgid "Often you want to look inside your files, to have a look at what you've changed. You can accomplish this by selecting a file which has changed, and selecting <guimenuitem>Diff</guimenuitem> from TortoiseGit's context menu. This starts the external diff-viewer, which will then compare the current file with the pristine copy (<literal>BASE</literal> revision), which was stored after the last checkout or update."
4262 #: ../source/TortoiseGit_en.xml:5273
4263 msgid "Even when not inside a working copy or when you have multiple versions of the file lying around, you can still display diffs:"
4267 #: ../source/TortoiseGit_en.xml:5277
4268 msgid "Select the two files you want to compare in explorer (e.g. using <keycap>Ctrl</keycap> and the mouse) and choose <guimenuitem>Diff</guimenuitem> from TortoiseGit's context menu. The file clicked last (the one with the focus, i.e. the dotted rectangle) will be regarded as the later one."
4272 #: ../source/TortoiseGit_en.xml:5291
4277 #: ../source/TortoiseGit_en.xml:5293
4278 msgid "In an ideal world, you only ever work on one thing at a time, and your working copy contains only one set of logical changes. OK, back to reality. It often happens that you have to work on several unrelated tasks at once, and when you look in the commit dialog, all the changes are mixed in together. The <firstterm>changelist</firstterm> feature helps you group files together, making it easier to see what you are doing. Of course this can only work if the changes do not overlap. If two different tasks affect the same file, there is no way to separate the changes."
4282 #: ../source/TortoiseGit_en.xml:5304
4283 msgid "The changelist feature in TortoiseGit is only available in Windows XP and later, as it depends on a shell capability which is not present in Windows 2000. Sorry, but Win2K is really quite old now, so please don't complain."
4287 #: ../source/TortoiseGit_en.xml:5311
4288 msgid "You can see changelists in several places, but the most important ones are the commit dialog and the check-for-modifications dialog. Let's start in the check-for-modifications dialog after you have worked on several features and many files. When you first open the dialog, all the changed files are listed together. Suppose you now want to organise things and group those files according to feature."
4292 #: ../source/TortoiseGit_en.xml:5319
4293 msgid "Select one or more files and use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Move to changelist</guimenuitem></menuchoice> to add an item to a changelist. Initially there will be no changelists, so the first time you do this you will create a new changelist. Give it name which describes what you are using it for, and click <guibutton>OK</guibutton>. The dialog will now change to show groups of items."
4297 #: ../source/TortoiseGit_en.xml:5331
4298 msgid "Once you have created a changelist you can drag and drop items into it, either from another changelist, or from Windows Explorer. Dragging from Explorer can be useful as it allows you to add items to a changelist before the file is modified. You could do that from the check-for-modifications dialog, but only by displaying all unmodified files."
4302 #: ../source/TortoiseGit_en.xml:5340
4303 msgid "Commit dialog with Changelists"
4307 #: ../source/TortoiseGit_en.xml:5338
4308 msgid "<placeholder-1/> In the commit dialog you can see those same files, grouped by changelist. Apart from giving an immediate visual indication of groupings, you can also use the group headings to select which files to commit."
4312 #: ../source/TortoiseGit_en.xml:5347
4313 msgid "On XP, there is a context menu when you right click on a group heading which gives you the choice to check or uncheck all group entries. On Vista however the context menu is not necessary. Click on the group header to select all entries, then check one of the selected entries to check all."
4317 #: ../source/TortoiseGit_en.xml:5353
4318 msgid "TortoiseGit reserves one changelist name for its own use, namely <literal>ignore-on-commit</literal>. This is used to mark versioned files which you almost never want to commit even though they have local changes. This feature is described in <xref linkend=\"tsvn-dug-commit-ignore\"/>."
4322 #: ../source/TortoiseGit_en.xml:5359
4323 msgid "When you commit files belonging to a changelist then normally you would expect that the changelist membership is no longer needed. So by default, files are removed from changelists automatically on commit. If you wish to retain the file in its changelist, use the <guilabel>Keep changelists</guilabel> checkbox at the bottom of the commit dialog."
4327 #: ../source/TortoiseGit_en.xml:5367
4328 msgid "Changelists are purely a local client feature. Creating and removing changelists will not affect the repository, nor anyone else's working copy. They are simply a convenient way for you to organise your files."
4332 #: ../source/TortoiseGit_en.xml:5375
4333 msgid "Revision Log Dialog"
4337 #: ../source/TortoiseGit_en.xml:5377
4342 #: ../source/TortoiseGit_en.xml:5380
4347 #: ../source/TortoiseGit_en.xml:5383
4348 msgid "commit messages"
4352 #: ../source/TortoiseGit_en.xml:5386
4353 msgid "log messages"
4357 #: ../source/TortoiseGit_en.xml:5389
4358 msgid "For every change you make and commit, you should provide a log message for that change. That way you can later find out what changes you made and why, and you have a detailed log for your development process."
4362 #: ../source/TortoiseGit_en.xml:5401
4363 msgid "The top pane shows a list of revisions where changes to the file/folder have been committed. This summary includes the date and time, the person who committed the revision and the start of the log message."
4367 #: ../source/TortoiseGit_en.xml:5407
4368 msgid "Lines shown in blue indicate that something has been copied to this development line (perhaps from a branch)."
4372 #: ../source/TortoiseGit_en.xml:5413
4373 msgid "The middle pane shows the full log message for the selected revision."
4377 #: ../source/TortoiseGit_en.xml:5419
4378 msgid "The bottom pane shows a list of all files and folders that were changed as part of the selected revision."
4382 #: ../source/TortoiseGit_en.xml:5395
4383 msgid "The Revision Log Dialog retrieves all those log messages and shows them to you. The display is divided into 3 panes. <placeholder-1/> But it does much more than that - it provides context menu commands which you can use to get even more information about the project history."
4387 #: ../source/TortoiseGit_en.xml:5430
4388 msgid "Invoking the Revision Log Dialog"
4392 #: ../source/TortoiseGit_en.xml:5433
4393 msgid "The Revision Log Dialog"
4397 #: ../source/TortoiseGit_en.xml:5439
4398 msgid "From the TortoiseGit context submenu"
4402 #: ../source/TortoiseGit_en.xml:5444
4403 msgid "From the property page"
4407 #: ../source/TortoiseGit_en.xml:5449
4408 msgid "From the Progress dialog after an update has finished. Then the Log dialog only shows those revisions which were changed since your last update"
4412 #: ../source/TortoiseGit_en.xml:5431
4413 msgid "<placeholder-1/> There are several places from where you can show the Log dialog: <placeholder-2/>"
4417 #: ../source/TortoiseGit_en.xml:5459
4418 msgid "Revision Log Actions"
4422 #: ../source/TortoiseGit_en.xml:5460
4423 msgid "The top pane has an <guilabel>Actions</guilabel> column containing icons that summarize what has been done in that revision. There are four different icons, each shown in its own column."
4427 #: ../source/TortoiseGit_en.xml:5465
4428 msgid "<graphic fileref=\"../images/ActionModifiedIcon.png\"/> If a revision modified a file or directory, the <emphasis>modified</emphasis> icon is shown in the first column."
4432 #: ../source/TortoiseGit_en.xml:5470
4433 msgid "<graphic fileref=\"../images/ActionAddedIcon.png\"/> If a revision added a file or directory, the <emphasis>added</emphasis> icon is shown in the second column."
4437 #: ../source/TortoiseGit_en.xml:5475
4438 msgid "<graphic fileref=\"../images/ActionDeletedIcon.png\"/> If a revision deleted a file or directory, the <emphasis>deleted</emphasis> icon is shown in the third column."
4442 #: ../source/TortoiseGit_en.xml:5480
4443 msgid "<graphic fileref=\"../images/ActionReplacedIcon.png\"/> If a revision replaced a file or directory, the <emphasis>replaced</emphasis> icon is shown in the fourth column."
4447 #: ../source/TortoiseGit_en.xml:5487
4448 msgid "Getting Additional Information"
4452 #: ../source/TortoiseGit_en.xml:5490
4453 msgid "The Revision Log Dialog Top Pane with Context Menu"
4457 #: ../source/TortoiseGit_en.xml:5499
4458 msgid "Compare the selected revision with your working copy. The default Diff-Tool is TortoiseMerge which is supplied with TortoiseGit. If the log dialog is for a folder, this will show you a list of changed files, and allow you to review the changes made to each file individually."
4462 #: ../source/TortoiseGit_en.xml:5509
4463 msgid "View the changes made in the selected revision as a Unified-Diff file (GNU patch format). This shows only the differences with a few lines of context. It is harder to read than a visual file compare, but will show all file changes together in a compact format."
4467 #: ../source/TortoiseGit_en.xml:5518
4468 msgid "Compare the selected revision with the previous revision. This works in a similar manner to comparing with your working copy."
4472 #: ../source/TortoiseGit_en.xml:5525
4473 msgid "Blame the selected revision, and the file in your working BASE and compare the blame reports using a visual diff tool. Read <xref linkend=\"tsvn-dug-blame-diffs\"/> for more detail. (files only)."
4477 #: ../source/TortoiseGit_en.xml:5533
4478 msgid "Blame the selected revision, and the previous revision, and compare the results using a visual diff tool. (folders only)."
4482 #: ../source/TortoiseGit_en.xml:5540
4483 msgid "Save the selected revision to a file so you have an older version of that file. (files only)."
4487 #: ../source/TortoiseGit_en.xml:5546
4488 msgid "Open the selected file, either with the default viewer for that file type, or with a program you choose. (files only)."
4492 #: ../source/TortoiseGit_en.xml:5552
4493 msgid "Blame the file up to the selected revision. (files only)."
4497 #: ../source/TortoiseGit_en.xml:5557
4498 msgid "Open the repository browser to examine the selected file or folder in the repository as it was at the selected revision."
4502 #: ../source/TortoiseGit_en.xml:5563
4503 msgid "Create a branch/tag from a selected revision. This is useful e.g. if you forgot to create a tag and already committed some changes which weren't supposed to get into that release."
4507 #: ../source/TortoiseGit_en.xml:5571
4508 msgid "Update your working copy to the selected revision. Useful if you want to have your working copy reflect a time in the past. It is best to update a whole directory in your working copy, not just one file, otherwise your working copy will be inconsistent and you will be unable to commit any changes."
4512 #: ../source/TortoiseGit_en.xml:5581
4513 msgid "Revert changes from which were made in the selected revision. The changes are reverted in your working copy so this operation does <emphasis>not</emphasis> affect the repository at all! Note that this will undo the changes made in that revision only. It does not replace your working copy with the entire file at the earlier revision. This is very useful for undoing an earlier change when other unrelated changes have been made since. If you have made local changes, this command will merge these changes into your working copy."
4517 #: ../source/TortoiseGit_en.xml:5595
4518 msgid "Revert to an earlier revision. If you have made several changes, and then decide that you really want to go back to how things were in revision N, this is the command you need. Again, the changes are reverted in your working copy so this operation does <emphasis>not</emphasis> affect the repository until you commit the changes. Note that this will undo <emphasis>all</emphasis> changes made after the selected revision, replacing the file/folder with the earlier version. If you have made local changes, this command will merge these changes into your working copy."
4522 #: ../source/TortoiseGit_en.xml:5609
4523 msgid "Merge the selected revision(s) into a different working copy. A folder selection dialog allows you to choose the working copy to merge into, but after that there is no confirmation dialog, nor any opportunity to try a dry run. It is a good idea to merge into an unmodified working copy so that you can revert the changes if it doesn't work out! This is a useful feature if you want to merge selected revisions from one branch to another."
4527 #: ../source/TortoiseGit_en.xml:5621
4528 msgid "Make a fresh checkout of the selected folder at the selected revision. This brings up a dialog for you to confirm the URL and revision, and select a location for the checkout."
4532 #: ../source/TortoiseGit_en.xml:5628
4533 msgid "Export the selected file/folder at the selected revision. This brings up a dialog for you to confirm the URL and revision, and select a location for the export."
4537 #: ../source/TortoiseGit_en.xml:5635
4538 msgid "Edit the log message or author attached to a previous commit. Read <xref linkend=\"tsvn-dug-showlog-4\"/> to find out how this works."
4542 #: ../source/TortoiseGit_en.xml:5642
4543 msgid "Copy the log details of the selected revisions to the clipboard. This will copy the revision number, author, date, log message and the list of changed items for each revision."
4547 #: ../source/TortoiseGit_en.xml:5649
4548 msgid "Search log messages for the text you enter. This searches the log messages that you entered and also the action summaries created by Git (shown in the bottom pane). The search is not case sensitive."
4552 #: ../source/TortoiseGit_en.xml:5488
4553 msgid "<placeholder-1/> The top pane of the Log dialog has a context menu that allows you to access much more information. Some of these menu entries appear only when the log is shown for a file, and some only when the log is shown for a folder. <placeholder-2/>"
4557 #: ../source/TortoiseGit_en.xml:5660
4558 msgid "Top Pane Context Menu for 2 Selected Revisions"
4562 #: ../source/TortoiseGit_en.xml:5668
4563 msgid "Compare the two selected revisions using a visual difference tool. The default Diff-Tool is TortoiseMerge which is supplied with TortoiseGit."
4567 #: ../source/TortoiseGit_en.xml:5673
4568 msgid "If you select this option for a folder, a further dialog pops up listing the changed files and offering you further diff options. Read more about the Compare Revisions dialog in <xref linkend=\"tsvn-dug-compare-revs\"/>."
4572 #: ../source/TortoiseGit_en.xml:5681
4573 msgid "Blame the two revisions and compare the blame reports using a visual difference tool. Read <xref linkend=\"tsvn-dug-blame-diffs\"/> for more detail."
4577 #: ../source/TortoiseGit_en.xml:5688
4578 msgid "View the differences between the two selected revisions as a Unified-Diff file. This works for files and folders."
4582 #: ../source/TortoiseGit_en.xml:5694
4583 msgid "Copy log messages to clipboard as described above."
4587 #: ../source/TortoiseGit_en.xml:5699
4588 msgid "Search log messages as described above."
4592 #: ../source/TortoiseGit_en.xml:5658
4593 msgid "<placeholder-1/> If you select two revisions at once (using the usual <keycap>Ctrl</keycap>-modifier), the context menu changes and gives you fewer options: <placeholder-2/>"
4597 #: ../source/TortoiseGit_en.xml:5705
4598 msgid "If you select two or more revisions (using the usual <keycap>Ctrl</keycap> or <keycap>Shift</keycap> modifiers), the context menu will include an entry to Revert all changes which were made in the selected revisions. This is the easiest way to rollback a group of revisions in one go."
4602 #: ../source/TortoiseGit_en.xml:5712
4603 msgid "You can also choose to merge the selected revisions to another working copy, as described above."
4607 #: ../source/TortoiseGit_en.xml:5718
4608 msgid "The Log Dialog Bottom Pane with Context Menu"
4612 #: ../source/TortoiseGit_en.xml:5724
4613 msgid "Show changes made in the selected revision for the selected file. This context menu is only available for files shown as <emphasis>modified</emphasis>."
4617 #: ../source/TortoiseGit_en.xml:5731
4618 msgid "Blame the selected revision and the previous revision for the selected file, and compare the blame reports using a visual diff tool. Read <xref linkend=\"tsvn-dug-blame-diffs\"/> for more detail."
4623 #: ../source/TortoiseGit_en.xml:5739
4624 #: ../source/TortoiseGit_en.xml:9260
4625 msgid "Open the selected file, either with the default viewer for that file type, or with a program you choose."
4629 #: ../source/TortoiseGit_en.xml:5745
4630 msgid "Revert the changes made to the selected file in that revision."
4634 #: ../source/TortoiseGit_en.xml:5750
4635 msgid "View the Git properties for the selected item."
4639 #: ../source/TortoiseGit_en.xml:5755
4640 msgid "Show the revision log for the selected single file."
4644 #: ../source/TortoiseGit_en.xml:5760
4645 msgid "Save the selected revision to a file so you have an older version of that file."
4649 #: ../source/TortoiseGit_en.xml:5716
4650 msgid "<placeholder-1/> The bottom pane of the Log dialog also has a context menu that allows you to <placeholder-2/>"
4654 #: ../source/TortoiseGit_en.xml:5768
4655 msgid "You may notice that sometimes we refer to changes and other times to differences. What's the difference?"
4659 #: ../source/TortoiseGit_en.xml:5772
4660 msgid "Git uses revision numbers to mean 2 different things. A revision generally represents the state of the repository at a point in time, but it can also be used to represent the changeset which created that revision, eg. <quote>Done in r1234</quote> means that the changes committed in r1234 implement feature X. To make it clearer which sense is being used, we use two different terms."
4664 #: ../source/TortoiseGit_en.xml:5781
4665 msgid "If you select two revisions N and M, the context menu will offer to show the <emphasis>difference</emphasis> between those two revisions. In Git terms this is <literal>diff -r M:N</literal>."
4669 #: ../source/TortoiseGit_en.xml:5787
4670 msgid "If you select a single revision N, the context menu will offer to show the <emphasis>changes</emphasis> made in that revision. In Git terms this is <literal>diff -r N-1:N</literal> or <literal>diff -c N</literal>."
4674 #: ../source/TortoiseGit_en.xml:5793
4675 msgid "The bottom pane shows the files changed in all selected revisions, so the context menu always offers to show <emphasis>changes</emphasis>."
4679 #: ../source/TortoiseGit_en.xml:5800
4680 msgid "Getting more log messages"
4684 #: ../source/TortoiseGit_en.xml:5806
4685 msgid "For a large repository there may be hundreds or even thousands of changes and fetching them all could take a long time. Normally you are only interested in the more recent changes. By default, the number of log messages fetched is limited to 100, but you can change this value in <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Settings</guimenuitem></menuchoice> (<xref linkend=\"tsvn-dug-settings\"/>),"
4689 #: ../source/TortoiseGit_en.xml:5821
4690 msgid "When the <guilabel>Stop on copy/rename</guilabel> box is checked, Show Log will stop at the point that the selected file or folder was copied from somewhere else within the repository. This can be useful when looking at branches (or tags) as it stops at the root of that branch, and gives a quick indication of changes made in that branch only."
4694 #: ../source/TortoiseGit_en.xml:5830
4695 msgid "Normally you will want to leave this option unchecked. TortoiseGit remembers the state of the checkbox, so it will respect your preference."
4699 #: ../source/TortoiseGit_en.xml:5835
4700 msgid "When the Show Log dialog is invoked from within the Merge dialog, the box is always checked by default. This is because merging is most often looking at changes on branches, and going back beyond the root of the branch does not make sense in that instance."
4704 #: ../source/TortoiseGit_en.xml:5842
4705 msgid "Note that Git currently implements renaming as a copy/delete pair, so renaming a file or folder will also cause the log display to stop if this option is checked."
4709 #: ../source/TortoiseGit_en.xml:5801
4710 msgid "The Log dialog does not always show all changes ever made for a number of reasons: <placeholder-1/>"
4714 #: ../source/TortoiseGit_en.xml:5851
4715 msgid "If you want to see more log messages, click the <guibutton>Next 100</guibutton> to retrieve the next 100 log messages. You can repeat this as many times as needed."
4719 #: ../source/TortoiseGit_en.xml:5856
4720 msgid "Next to this button there is a multi-function button which remembers the last option you used it for. Click on the arrow to see the other options offered."
4724 #: ../source/TortoiseGit_en.xml:5861
4725 msgid "Use <guibutton>Show Range ...</guibutton> if you want to view a specific range of revisions. A dialog will then prompt you to enter the start and end revision."
4729 #: ../source/TortoiseGit_en.xml:5866
4730 msgid "Use <guibutton>Show All</guibutton> if you want to see <emphasis>all</emphasis> log messages from HEAD right back to revision 1."
4734 #: ../source/TortoiseGit_en.xml:5872
4735 msgid "Merge Tracking Features"
4739 #: ../source/TortoiseGit_en.xml:5874
4740 msgid "merge tracking log"
4744 #: ../source/TortoiseGit_en.xml:5876
4745 msgid "Git 1.5 and later keeps a record of merges using properties. This allows us to get a more detailed history of merged changes. For example, if you develop a new feature on a branch and then merge that branch back to trunk, the feature development will show up on the trunk log as a single commit for the merge, even though there may have been 1000 commits during branch development."
4749 #: ../source/TortoiseGit_en.xml:5885
4750 msgid "The Log Dialog Showing Merge Tracking Revisions"
4754 #: ../source/TortoiseGit_en.xml:5888
4755 msgid "If you want to see the detail of which revisions were merged as part of that commit, use the <guilabel>Include merged revisions</guilabel> checkbox. This will fetch the log messages again, but will also interleave the log messages from revisions which were merged. Merged revisions are shown in grey because they represent changes made on a different part of the tree."
4759 #: ../source/TortoiseGit_en.xml:5896
4760 msgid "Of course, merging is never simple! During feature development on the branch there will probably be occasional merges back from trunk to keep the branch in sync with the main line code. So the merge history of the branch will also include another layer of merge history. These different layers are shown in the log dialog using indentation levels."
4764 #: ../source/TortoiseGit_en.xml:5906
4765 msgid "Changing the Log Message and Author"
4769 #: ../source/TortoiseGit_en.xml:5908
4770 msgid "edit log/author"
4774 #: ../source/TortoiseGit_en.xml:5910
4775 msgid "Sometimes you might want to change a log message you once entered, maybe because there's a spelling error in it or you want to improve the message or change it for other reasons. Or you want to change the author of the commit because you forgot to set up authentication or..."
4779 #: ../source/TortoiseGit_en.xml:5917
4780 msgid "Git lets you change both the log message and the author of revisions any time you want. But since such changes can't be undone (those changes are not versioned) this feature is disabled by default. To make this work, you must set up a pre-revprop-change hook. Please refer to the chapter on <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.reposadmin.create.html#svn.reposadmin.create.hooks\"><citetitle>Hook Scripts</citetitle></ulink> in the Git Book for details about how to do that. Read <xref linkend=\"tsvn-repository-hooks\"/> to find some further notes on implementing hooks on a Windows machine."
4784 #: ../source/TortoiseGit_en.xml:5930
4785 msgid "Once you've set up your server with the required hooks, you can change both author and log message of any revision, using the context menu from the top pane of the Log dialog."
4789 #: ../source/TortoiseGit_en.xml:5936
4790 msgid "Because Git's revision properties are not versioned, making modifications to such a property (for example, the <literal>svn:log</literal> commit message property) will overwrite the previous value of that property <emphasis>forever</emphasis>."
4794 #: ../source/TortoiseGit_en.xml:5946
4795 msgid "Filtering Log Messages"
4799 #: ../source/TortoiseGit_en.xml:5948
4804 #: ../source/TortoiseGit_en.xml:5950
4805 msgid "If you want to restrict the log messages to show only those you are interested in rather than scrolling through a list of hundreds, you can use the filter controls at the top of the Log Dialog. The start and end date controls allow you to restrict the output to a known date range. The search box allows you to show only messages which contain a particular phrase."
4809 #: ../source/TortoiseGit_en.xml:5959
4810 msgid "Click on the search icon to select which information you want to search in, and to choose <emphasis>regex</emphasis> mode. Normally you will only need a simple text search, but if you need to more flexible search terms, you can use regular expressions. If you hover the mouse over the box, a tooltip will give hints on how to use the regex functions. You can also find online documentation and a tutorial at <ulink url=\"http://www.regular-expressions.info/\"><citetitle>http://www.regular-expressions.info/</citetitle></ulink>."
4814 #: ../source/TortoiseGit_en.xml:5971
4815 msgid "Note that these filters act on the messages already retrieved. They do not control downloading of messages from the repository."
4819 #: ../source/TortoiseGit_en.xml:5975
4820 msgid "You can also filter the path names in the bottom pane using the <guilabel>Hide unrelated changed paths</guilabel> checkbox. Related paths are those which contain the path used to display the log. If you fetch the log for a folder, that means anything in that folder or below it. For a file it means just that one file. The checkbox is tristate: you can show all paths, grey out the unrelated ones, or hide the unrelated paths completely."
4824 #: ../source/TortoiseGit_en.xml:5984
4825 msgid "Sometimes your working practices will require log messages to follow a particular format, which means that the text describing the changes is not visible in the abbreviated summary shown in the top pane. The property <literal>tsvn:logsummary</literal> can be used to extract a portion of the log message to be shown in the top pane. Read <xref linkend=\"tsvn-dug-propertypage-tsvn-props\"/> to find out how to use this property."
4829 #: ../source/TortoiseGit_en.xml:5996
4830 msgid "Statistical Information"
4834 #: ../source/TortoiseGit_en.xml:5998
4839 #: ../source/TortoiseGit_en.xml:6000
4840 msgid "The <guibutton>Statistics</guibutton> button brings up a box showing some interesting information about the revisions shown in the Log dialog. This shows how many authors have been at work, how many commits they have made, progress by week, and much more. Now you can see at a glance who has been working hardest and who is slacking ;-)"
4844 #: ../source/TortoiseGit_en.xml:6009
4845 msgid "Statistics Page"
4849 #: ../source/TortoiseGit_en.xml:6010
4850 msgid "This page gives you all the numbers you can think of, in particular the period and number of revisions covered, and some min/max/average values."
4854 #: ../source/TortoiseGit_en.xml:6017
4855 msgid "Commits by Author Page"
4859 #: ../source/TortoiseGit_en.xml:6020
4860 msgid "Commits-by-Author Histogram"
4864 #: ../source/TortoiseGit_en.xml:6027
4865 msgid "Commits-by-Author Pie Chart"
4869 #: ../source/TortoiseGit_en.xml:6018
4870 msgid "<placeholder-1/> This graph shows you which authors have been active on the project as a simple histogram, stacked histogram or pie chart. <placeholder-2/>"
4874 #: ../source/TortoiseGit_en.xml:6031
4875 msgid "Where there are a few major authors and many minor contributors, the number of tiny segments can make the graph more difficult to read. The slider at the bottom allows you to set a threshold (as a percentage of total commits) below which any activity is grouped into an <emphasis>Others</emphasis> category."
4879 #: ../source/TortoiseGit_en.xml:6040
4880 msgid "Commits by date Page"
4884 #: ../source/TortoiseGit_en.xml:6043
4885 msgid "Commits-by-date Graph"
4889 #: ../source/TortoiseGit_en.xml:6041
4890 msgid "<placeholder-1/> This page gives you a graphical representation of project activity in terms of number of commits <emphasis>and</emphasis> author. This gives some idea of when a project is being worked on, and who was working at which time."
4894 #: ../source/TortoiseGit_en.xml:6051
4895 msgid "When there are several authors, you will get many lines on the graph. There are two views available here: <emphasis>normal</emphasis>, where each author's activity is relative to the base line, and <emphasis>stacked</emphasis>, where each author's activity is relative to the line underneath. The latter option avoids the lines crossing over, which can make the graph easier to read, but less easy to see one author's output."
4899 #: ../source/TortoiseGit_en.xml:6061
4900 msgid "By default the analysis is case-sensitive, so users <literal>PeterEgan</literal> and <literal>PeteRegan</literal> are treated as different authors. However, in many cases user names are not case-sensitive, and are sometimes entered inconsistently, so you may want <literal>DavidMorgan</literal> and <literal>davidmorgan</literal> to be treated as the same person. Use the <guilabel>Authors case insensitive</guilabel> checkbox to control how this is handled."
4904 #: ../source/TortoiseGit_en.xml:6071
4905 msgid "Note that the statistics cover the same period as the Log dialog. If that is only displaying one revision then the statistics will not tell you very much."
4909 #: ../source/TortoiseGit_en.xml:6079
4910 msgid "Offline Mode"
4914 #: ../source/TortoiseGit_en.xml:6080
4915 msgid "If the server is not reachable, and you have log caching enabled you can use the log dialog and revision graph in offline mode. This uses data from the cache, which allows you to continue working although the information may not be up-to-date or even complete."
4920 #: ../source/TortoiseGit_en.xml:6088
4921 #: ../source/TortoiseGit_en.xml:9677
4922 msgid "Refreshing the View"
4926 #: ../source/TortoiseGit_en.xml:6089
4927 msgid "If you want to check the server again for newer log messages, you can simply refresh the view using <keycap>F5</keycap>. If you are using the log cache (enabled by default), this will check the repository for newer messages and fetch only the new ones. If the log cache was in offline mode, this will also attempt to go back online."
4931 #: ../source/TortoiseGit_en.xml:6097
4932 msgid "If you are using the log cache and you think the message content or author may have changed, you can use <keycap>Shift-F5</keycap> or <keycap>Ctrl-F5</keycap> to re-fetch the displayed messages from the server and update the log cache. Note that this only affects messages currently shown and does not invalidate the entire cache for that repository."
4936 #: ../source/TortoiseGit_en.xml:6108
4937 msgid "Viewing Differences"
4942 #: ../source/TortoiseGit_en.xml:6110
4943 #: ../source/TortoiseGit_en.xml:8853
4948 #: ../source/TortoiseGit_en.xml:6113
4953 #: ../source/TortoiseGit_en.xml:6115
4954 msgid "One of the commonest requirements in project development is to see what has changed. You might want to look at the differences between two revisions of the same file, or the differences between two separate files. TortoiseGit provides a built-in tool named <application>TortoiseMerge</application> for viewing differences of text files. For viewing differences of image files, TortoiseGit also has a tool named <application>TortoiseIDiff</application>. Of course, you can use your own favourite diff program if you like."
4958 #: ../source/TortoiseGit_en.xml:6129
4959 msgid "File Differences"
4963 #: ../source/TortoiseGit_en.xml:6132
4964 msgid "Local changes"
4968 #: ../source/TortoiseGit_en.xml:6134
4969 msgid "If you want to see what changes <emphasis>you</emphasis> have made in your working copy, just use the explorer context menu and select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Diff</guimenuitem></menuchoice>."
4973 #: ../source/TortoiseGit_en.xml:6146
4974 msgid "Difference to another branch/tag"
4978 #: ../source/TortoiseGit_en.xml:6148
4979 msgid "If you want to see what has changed on trunk (if you are working on a branch) or on a specific branch (if you are working on trunk), you can use the explorer context menu. Just hold down the <keycap>Shift</keycap> key while you right click on the file. Then select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Diff with URL</guimenuitem></menuchoice>. In the following dialog, specify the URL in the repository with which you want to compare your local file to."
4983 #: ../source/TortoiseGit_en.xml:6161
4984 msgid "You can also use the repository browser and select two trees to diff, perhaps two tags, or a branch/tag and trunk. The context menu there allows you to compare them using <guimenuitem>Compare revisions</guimenuitem>. Read more in <xref linkend=\"tsvn-dug-compare-revs\"/>."
4988 #: ../source/TortoiseGit_en.xml:6171
4989 msgid "Difference from a previous revision"
4993 #: ../source/TortoiseGit_en.xml:6173
4994 msgid "If you want to see the difference between a particular revision and your working copy, use the Revision Log dialog, select the revision of interest, then select <guimenuitem>Compare with working copy</guimenuitem> from the context menu."
4998 #: ../source/TortoiseGit_en.xml:6180
4999 msgid "If you want to see the difference between the last committed revision and your working copy, assuming that the working copy hasn't been modified, just right click on the file. Then select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Diff with previous version</guimenuitem></menuchoice>. This will perform a diff between the revision before the last-commit-date (as recorded in your working copy) and the working BASE. This shows you the last change made to that file to bring it to the state you now see in your working copy. It will not show changes newer than your working copy."
5003 #: ../source/TortoiseGit_en.xml:6197
5004 msgid "Difference between two previous revisions"
5008 #: ../source/TortoiseGit_en.xml:6199
5009 msgid "If you want to see the difference between two revisions which are already committed, use the Revision Log dialog and select the two revisions you want to compare (using the usual <keycap>Ctrl</keycap>-modifier). Then select <guimenuitem>Compare revisions</guimenuitem> from the context menu."
5013 #: ../source/TortoiseGit_en.xml:6207
5014 msgid "If you did this from the revision log for a folder, a Compare Revisions dialog appears, showing a list of changed files in that folder. Read more in <xref linkend=\"tsvn-dug-compare-revs\"/>."
5018 #: ../source/TortoiseGit_en.xml:6216
5019 msgid "All changes made in a commit"
5023 #: ../source/TortoiseGit_en.xml:6218
5024 msgid "If you want to see the changes made to all files in a particular revision in one view, you can use Unified-Diff output (GNU patch format). This shows only the differences with a few lines of context. It is harder to read than a visual file compare, but will show all the changes together. From the Revision Log dialog select the revision of interest, then select <guimenuitem>Show Differences as Unified-Diff</guimenuitem> from the context menu."
5028 #: ../source/TortoiseGit_en.xml:6232
5029 msgid "Difference between files"
5033 #: ../source/TortoiseGit_en.xml:6234
5034 msgid "If you want to see the differences between two different files, you can do that directly in explorer by selecting both files (using the usual <keycap>Ctrl</keycap>-modifier). Then from the explorer context menu select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Diff</guimenuitem></menuchoice>."
5038 #: ../source/TortoiseGit_en.xml:6247
5039 msgid "Difference between WC file/folder and a URL"
5043 #: ../source/TortoiseGit_en.xml:6249
5044 msgid "If you want to see the differences between a file in your working copy, and a file in any Git repository, you can do that directly in explorer by selecting the file then holding down the <keycap>Shift</keycap> key whilst right clicking to obtain the context menu. Select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Diff with URL</guimenuitem></menuchoice>. You can do the same thing for a working copy folder. TortoiseMerge shows these differences in the same way as it shows a patch file - a list of changed files which you can view one at a time."
5048 #: ../source/TortoiseGit_en.xml:6267
5049 msgid "Difference with blame information"
5053 #: ../source/TortoiseGit_en.xml:6269
5054 msgid "If you want to see not only the differences but also the author, revision and date that changes were made, you can combine the diff and blame reports from within the revision log dialog. Read <xref linkend=\"tsvn-dug-blame-diffs\"/> for more detail."
5058 #: ../source/TortoiseGit_en.xml:6278
5059 msgid "Difference between folders"
5063 #: ../source/TortoiseGit_en.xml:6280
5064 msgid "The built-in tools supplied with TortoiseGit do not support viewing differences between directory hierarchies. But if you have an external tool which does support that feature, you can use that instead. In <xref linkend=\"tsvn-dug-diff-tools\"/> we tell you about some tools which we have used."
5068 #: ../source/TortoiseGit_en.xml:6290
5069 msgid "If you have configured a third party diff tool, you can use <keycap>Shift</keycap> when selecting the Diff command to use the alternate tool. Read <xref linkend=\"tsvn-dug-settings-progs\"/> to find out about configuring other diff tools."
5073 #: ../source/TortoiseGit_en.xml:6299
5074 msgid "Line-end and Whitespace Options"
5078 #: ../source/TortoiseGit_en.xml:6300
5079 msgid "Sometimes in the life of a project you might change the line endings from <literal>CRLF</literal> to <literal>LF</literal>, or you may change the indentation of a section. Unfortunately this will mark a large number of lines as changed, even though there is no change to the meaning of the code. The options here will help to manage these changes when it comes to comparing and applying differences. You will see these settings in the <guilabel>Merge</guilabel> and <guilabel>Blame</guilabel> dialogs, as well as in the settings for TortoiseMerge."
5083 #: ../source/TortoiseGit_en.xml:6311
5084 msgid "<guilabel>Ignore line endings</guilabel> excludes changes which are due solely to difference in line-end style."
5088 #: ../source/TortoiseGit_en.xml:6315
5089 msgid "<guilabel>Compare whitespaces</guilabel> includes all changes in indentation and inline whitespace as added/removed lines."
5093 #: ../source/TortoiseGit_en.xml:6320
5094 msgid "<guilabel>Ignore whitespace changes</guilabel> excludes changes which are due solely to a change in the amount or type of whitespace, eg. changing the indentation or changing tabs to spaces. Adding whitespace where there was none before, or removing a whitespace completely is still shown as a change."
5098 #: ../source/TortoiseGit_en.xml:6328
5099 msgid "<guilabel>Ignore all whitespaces</guilabel> excludes all whitespace-only changes."
5103 #: ../source/TortoiseGit_en.xml:6332
5104 msgid "Naturally, any line with changed content is always included in the diff."
5108 #: ../source/TortoiseGit_en.xml:6338
5109 msgid "Comparing Folders"
5113 #: ../source/TortoiseGit_en.xml:6340
5114 msgid "compare revisions"
5118 #: ../source/TortoiseGit_en.xml:6343
5119 msgid "export changes"
5123 #: ../source/TortoiseGit_en.xml:6347
5124 msgid "The Compare Revisions Dialog"
5128 #: ../source/TortoiseGit_en.xml:6345
5129 msgid "<placeholder-1/> When you select two trees within the repository browser, or when you select two revisions of a folder in the log dialog, you can <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Compare revisions</guimenuitem></menuchoice>."
5133 #: ../source/TortoiseGit_en.xml:6357
5134 msgid "This dialog shows a list of all files which have changed and allows you to compare or blame them individually using context menu."
5138 #: ../source/TortoiseGit_en.xml:6361
5139 msgid "You can also export the list of changed files to a text file, or you can export the changed files themselves to a folder. This operation works on the selected files only, so you need to select the files of interest - usually that means all of them."
5143 #: ../source/TortoiseGit_en.xml:6367
5144 msgid "If you want to export the list of files <emphasis>and</emphasis> the actions (modified, added, deleted) as well, you can do that using the keyboard shortcuts <keycap>Ctrl-A</keycap> to select all entries and <keycap>Ctrl-C</keycap> to copy the detailed list to the clipboard."
5148 #: ../source/TortoiseGit_en.xml:6373
5149 msgid "The button at the top allows you to change the direction of comparison. You can show the changes need to get from A to B, or if you prefer, from B to A."
5153 #: ../source/TortoiseGit_en.xml:6378
5154 msgid "The buttons with the revision numbers on can be used to change to a different revision range. When you change the range, the list of items which differ between the two revisions will be updated automatically."
5158 #: ../source/TortoiseGit_en.xml:6383
5159 msgid "If the list of filenames is very long, you can use the search box to reduce the list to filenames containing specific text. Note that a simple text search is used, so if you want to restrict the list to C source files you should enter <filename>.c</filename> rather than <filename>*.c</filename>."
5163 #: ../source/TortoiseGit_en.xml:6392
5164 msgid "Diffing Images Using TortoiseIDiff"
5168 #: ../source/TortoiseGit_en.xml:6394
5173 #: ../source/TortoiseGit_en.xml:6397
5174 msgid "TortoiseIDiff"
5178 #: ../source/TortoiseGit_en.xml:6399
5179 msgid "There are many tools available for diffing text files, including our own TortoiseMerge, but we often find ourselves wanting to see how an image file has changed too. That's why we created TortoiseIDiff."
5183 #: ../source/TortoiseGit_en.xml:6406
5184 msgid "The image difference viewer"
5188 #: ../source/TortoiseGit_en.xml:6404
5189 msgid "<placeholder-1/><menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Diff</guimenuitem></menuchoice> for any of the common image file formats will start TortoiseIDiff to show image differences. By default the images are displayed side-by-side but you can use the View menu or toolbar to switch to a top-bottom view instead, or if you prefer, you can overlay the images and pretend you are using a lightbox."
5193 #: ../source/TortoiseGit_en.xml:6419
5194 msgid "Naturally you can also zoom in and out and pan around the image. You can also pan the image simply by left-dragging it. If you select the <guilabel>Link images together</guilabel> option, then the pan controls (scrollbars, mousewheel) on both images are linked."
5198 #: ../source/TortoiseGit_en.xml:6425
5199 msgid "An image info box shows details about the image file, such as the size in pixels, resolution and colour depth. If this box gets in the way, use <menuchoice><guimenu>View</guimenu><guimenuitem>Image Info</guimenuitem></menuchoice> to hide it. You can get the same information in a tooltip if you hover the mouse over the image title bar."
5203 #: ../source/TortoiseGit_en.xml:6437
5204 msgid "When the images are overlaid, the relative intensity of the images (alpha blend) is controlled by a slider control at the left side. You can click anywhere in the slider to set the blend directly, or you can drag the slider to change the blend interactively. <keycap>Ctrl+Shift</keycap>-<action>Wheel</action> to change the blend."
5208 #: ../source/TortoiseGit_en.xml:6444
5209 msgid "The button above the slider toggles between two preset blends, indicated by the markers on either side of the blend slider. By default one is at the top and the other at the bottom, so the toggle button just switches between one image and the other. You can move the markers to choose the two blend values that the toggle button will use."
5213 #: ../source/TortoiseGit_en.xml:6451
5214 msgid "Sometimes you want to see a difference rather than a blend. You might have the image files for two revisions of a printed circuit board and want to see which tracks have changed. If you disable alpha blend mode, the difference will be shown as an <emphasis>XOR</emphasis> of the pixel colour values. Unchanged areas will be plain white and changes will be coloured."
5218 #: ../source/TortoiseGit_en.xml:6461
5219 msgid "External Diff/Merge Tools"
5223 #: ../source/TortoiseGit_en.xml:6463
5228 #: ../source/TortoiseGit_en.xml:6466
5233 #: ../source/TortoiseGit_en.xml:6468
5234 msgid "If the tools we provide don't do what you need, try one of the many open-source or commercial programs available. Everyone has their own favourites, and this list is by no means complete, but here are a few that you might consider:"
5238 #: ../source/TortoiseGit_en.xml:6476
5243 #: ../source/TortoiseGit_en.xml:6478
5244 msgid "<ulink url=\"http://winmerge.sourceforge.net/\"><citetitle>WinMerge</citetitle></ulink> is a great open-source diff tool which can also handle directories."
5248 #: ../source/TortoiseGit_en.xml:6488
5249 msgid "Perforce Merge"
5253 #: ../source/TortoiseGit_en.xml:6490
5254 msgid "Perforce is a commercial RCS, but you can download the diff/merge tool for free. Get more information from <ulink url=\"http://www.perforce.com/perforce/products/merge.html\"><citetitle>Perforce</citetitle></ulink>."
5258 #: ../source/TortoiseGit_en.xml:6500
5263 #: ../source/TortoiseGit_en.xml:6502
5264 msgid "KDiff3 is a free diff tool which can also handle directories. You can download it from <ulink url=\"http://kdiff3.sf.net/\"><citetitle>here</citetitle></ulink>."
5268 #: ../source/TortoiseGit_en.xml:6512
5273 #: ../source/TortoiseGit_en.xml:6514
5274 msgid "ExamDiff Standard is freeware. It can handle files but not directories. ExamDiff Pro is shareware and adds a number of goodies including directory diff and editing capability. In both flavours, version 3.2 and above can handle unicode. You can download them from <ulink url=\"http://www.prestosoft.com/\"><citetitle>PrestoSoft</citetitle></ulink>."
5278 #: ../source/TortoiseGit_en.xml:6529
5279 msgid "Beyond Compare"
5283 #: ../source/TortoiseGit_en.xml:6531
5284 msgid "Similar to ExamDiff Pro, this is an excellent shareware diff tool which can handle directory diffs and unicode. Download it from <ulink url=\"http://www.scootersoftware.com/\"><citetitle>Scooter Software</citetitle></ulink>."
5288 #: ../source/TortoiseGit_en.xml:6542
5289 msgid "Araxis Merge"
5293 #: ../source/TortoiseGit_en.xml:6544
5294 msgid "Araxis Merge is a useful commercial tool for diff and merging both files and folders. It does three-way comparison in merges and has synchronization links to use if you've changed the order of functions. Download it from <ulink url=\"http://www.araxis.com/merge/index.html\"><citetitle>Araxis</citetitle></ulink>."
5298 #: ../source/TortoiseGit_en.xml:6556
5303 #: ../source/TortoiseGit_en.xml:6558
5304 msgid "This text editor includes syntax colouring for unified diffs, making them much easier to read. Download it from <ulink url=\"http://www.scintilla.org/SciTEDownload.html\"><citetitle>Scintilla</citetitle></ulink>."
5308 #: ../source/TortoiseGit_en.xml:6568
5313 #: ../source/TortoiseGit_en.xml:6570
5314 msgid "Notepad2 is designed as a replacement for the standard Windows Notepad program, and is based on the Scintilla open-source edit control. As well as being good for viewing unified diffs, it is much better than the Windows notepad for most jobs. Download it for free <ulink url=\"http://www.flos-freeware.ch/notepad2.html\"><citetitle>here</citetitle></ulink>."
5318 #: ../source/TortoiseGit_en.xml:6583
5319 msgid "Read <xref linkend=\"tsvn-dug-settings-progs\"/> for information on how to set up TortoiseGit to use these tools."
5323 #: ../source/TortoiseGit_en.xml:6590
5324 msgid "Adding New Files And Directories"
5328 #: ../source/TortoiseGit_en.xml:6592
5333 #: ../source/TortoiseGit_en.xml:6595
5334 msgid "version new files"
5339 #: ../source/TortoiseGit_en.xml:6600
5340 #: ../source/TortoiseGit_en.xml:6750
5341 msgid "Explorer context menu for unversioned files"
5345 #: ../source/TortoiseGit_en.xml:6598
5346 msgid "<placeholder-1/> If you created new files and/or directories during your development process then you need to add them to source control too. Select the file(s) and/or directory and use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Add</guimenuitem></menuchoice>."
5350 #: ../source/TortoiseGit_en.xml:6612
5351 msgid "After you added the files/directories to source control the file appears with a <literal>added</literal> icon overlay which means you first have to commit your working copy to make those files/directories available to other developers. Adding a file/directory does <emphasis>not</emphasis> affect the repository!"
5355 #: ../source/TortoiseGit_en.xml:6621
5360 #: ../source/TortoiseGit_en.xml:6622
5361 msgid "You can also use the Add command on already versioned folders. In that case, the add dialog will show you all unversioned files inside that versioned folder. This helps if you have many new files and need to add them all at once."
5365 #: ../source/TortoiseGit_en.xml:6635
5366 msgid "select the files you want to add"
5371 #: ../source/TortoiseGit_en.xml:6640
5372 #: ../source/TortoiseGit_en.xml:7066
5373 msgid "<action>right-drag</action> them to the new location inside the working copy"
5378 #: ../source/TortoiseGit_en.xml:6646
5379 #: ../source/TortoiseGit_en.xml:7072
5380 msgid "release the right mouse button"
5384 #: ../source/TortoiseGit_en.xml:6651
5385 msgid "select <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>SVN Add files to this WC</guimenuitem></menuchoice>. The files will then be copied to the working copy and added to version control."
5389 #: ../source/TortoiseGit_en.xml:6630
5390 msgid "To add files from outside your working copy you can use the drag-and-drop handler: <placeholder-1/>"
5394 #: ../source/TortoiseGit_en.xml:6663
5395 msgid "You can also add files within a working copy simply by left-dragging and dropping them onto the commit dialog."
5399 #: ../source/TortoiseGit_en.xml:6667
5400 msgid "If you add a file or folder by mistake, you can undo the addition before you commit using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Undo add...</guimenuitem></menuchoice>."
5404 #: ../source/TortoiseGit_en.xml:6677
5405 msgid "Copying/Moving/Renaming Files and Folders"
5409 #: ../source/TortoiseGit_en.xml:6679
5414 #: ../source/TortoiseGit_en.xml:6682
5415 msgid "rename files"
5419 #: ../source/TortoiseGit_en.xml:6685
5425 #: ../source/TortoiseGit_en.xml:6688
5426 #: ../source/TortoiseGit_en.xml:7833
5432 #: ../source/TortoiseGit_en.xml:6691
5433 #: ../source/TortoiseGit_en.xml:7836
5438 #: ../source/TortoiseGit_en.xml:6693
5439 msgid "It often happens that you already have the files you need in another project in your repository, and you simply want to copy them across. You could simply copy the files and add them as described above, but that would not give you any history. And if you subsequently fix a bug in the original files, you can only merge the fix automatically if the new copy is related to the original in Git."
5443 #: ../source/TortoiseGit_en.xml:6701
5444 msgid "The easiest way to copy files and folders from within a working copy is to use the right-drag menu. When you <action>right-drag</action> a file or folder from one working copy to another, or even within the same folder, a context menu appears when you release the mouse. <placeholder-1/> Now you can copy existing versioned content to a new location, possibly renaming it at the same time."
5448 #: ../source/TortoiseGit_en.xml:6713
5449 msgid "You can copy files and folders from your working copy to another location in the repository using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Branch/Tag</guimenuitem></menuchoice>. Refer to <xref linkend=\"tsvn-dug-branch-1\"/> to find out more."
5453 #: ../source/TortoiseGit_en.xml:6722
5454 msgid "You can locate an older version of a file or folder in the log dialog and copy it to a new location in the repository directly from the log dialog using <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Create branch/tag from revision</guimenuitem></menuchoice>. Refer to <xref linkend=\"tsvn-dug-showlog-2\"/> to find out more."
5458 #: ../source/TortoiseGit_en.xml:6732
5459 msgid "You can also use the repository browser to locate content you want, and copy it into your working copy directly from the repository, or copy between two locations within the repository. Refer to <xref linkend=\"tsvn-dug-repobrowser\"/> to find out more."
5463 #: ../source/TortoiseGit_en.xml:6740
5464 msgid "Ignoring Files And Directories"
5468 #: ../source/TortoiseGit_en.xml:6742
5473 #: ../source/TortoiseGit_en.xml:6745
5474 msgid "unversioned files/folders"
5478 #: ../source/TortoiseGit_en.xml:6748
5479 msgid "<placeholder-1/> In most projects you will have files and folders that should not be subject to version control. These might include files created by the compiler, <filename>*.obj, *.lst</filename>, maybe an output folder used to store the executable. Whenever you commit changes, TortoiseGit shows your unversioned files, which fills up the file list in the commit dialog. Of course you can turn off this display, but then you might forget to add a new source file."
5483 #: ../source/TortoiseGit_en.xml:6761
5484 msgid "The best way to avoid these problems is to add the derived files to the project's ignore list. That way they will never show up in the commit dialog, but genuine unversioned source files will still be flagged up."
5488 #: ../source/TortoiseGit_en.xml:6767
5489 msgid "If you <action>right click</action> on a single unversioned file, and select the command <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Add to Ignore List</guimenuitem></menuchoice> from the context menu, a submenu appears allowing you to select just that file, or all files with the same extension. If you select multiple files, there is no submenu and you can only add those specific files/folders."
5493 #: ../source/TortoiseGit_en.xml:6779
5494 msgid "If you want to remove one or more items from the ignore list, <action>right click</action> on those items and select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Remove from Ignore List</guimenuitem></menuchoice> You can also access a folder's <literal>svn:ignore</literal> property directly. That allows you to specify more general patterns using filename globbing, described in the section below. Read <xref linkend=\"tsvn-dug-propertypage\"/> for more information on setting properties directly. Please be aware that each ignore pattern has to be placed on a separate line. Separating them by spaces does not work."
5498 #: ../source/TortoiseGit_en.xml:6794
5499 msgid "The Global Ignore List"
5503 #: ../source/TortoiseGit_en.xml:6795
5504 msgid "Another way to ignore files is to add them to the <firstterm>global ignore list</firstterm>. The big difference here is that the global ignore list is a client property. It applies to <emphasis>all</emphasis> Git projects, but on the client PC only. In general it is better to use the <filename>svn:ignore</filename> property where possible, because it can be applied to specific project areas, and it works for everyone who checks out the project. Read <xref linkend=\"tsvn-dug-settings-main\"/> for more information."
5508 #: ../source/TortoiseGit_en.xml:6808
5509 msgid "Ignoring Versioned Items"
5513 #: ../source/TortoiseGit_en.xml:6809
5514 msgid "Versioned files and folders can never be ignored - that's a feature of Git. If you versioned a file by mistake, read <xref linkend=\"tsvn-howto-unversion\"/> for instructions on how to <quote>unversion</quote> it."
5518 #: ../source/TortoiseGit_en.xml:6817
5519 msgid "Pattern Matching in Ignore Lists"
5523 #: ../source/TortoiseGit_en.xml:6819
5528 #: ../source/TortoiseGit_en.xml:6822
5529 msgid "pattern matching"
5533 #: ../source/TortoiseGit_en.xml:6831
5538 #: ../source/TortoiseGit_en.xml:6833
5539 msgid "Matches any string of characters, including the empty string (no characters)."
5543 #: ../source/TortoiseGit_en.xml:6840
5548 #: ../source/TortoiseGit_en.xml:6842
5549 msgid "Matches any single character."
5553 #: ../source/TortoiseGit_en.xml:6848
5558 #: ../source/TortoiseGit_en.xml:6850
5559 msgid "Matches any one of the characters enclosed in the square brackets. Within the brackets, a pair of characters separated by <quote>-</quote> matches any character lexically between the two. For example <literal>[AGm-p]</literal> matches any one of <literal>A</literal>, <literal>G</literal>, <literal>m</literal>, <literal>n</literal>, <literal>o</literal> or <literal>p</literal>."
5563 #: ../source/TortoiseGit_en.xml:6824
5564 msgid "Git's ignore patterns make use of filename globbing, a technique originally used in Unix to specify files using meta-characters as wildcards. The following characters have special meaning: <placeholder-1/>"
5568 #: ../source/TortoiseGit_en.xml:6864
5569 msgid "Git uses the <literal>/</literal> as the path delimiter in all internal pathnames, and all pattern matching is done against this style of path names. If you want to use a path delimiter in your ignore pattern, be sure to use <literal>/</literal>, and not the Windows backslash."
5573 #: ../source/TortoiseGit_en.xml:6870
5574 msgid "Pattern matching is case sensitive, which can cause problems on Windows. You can force case insensitivity the hard way by pairing characters, eg. to ignore <literal>*.tmp</literal> regardless of case, you could use a pattern like <literal>*.[Tt][Mm][Pp]</literal>."
5578 #: ../source/TortoiseGit_en.xml:6877
5579 msgid "Git uses this pattern matching against every path presented to it for action. These paths are generally relative to the directory being acted upon for import, add, commit, etc. The matching pattern therefore has to take account of the fact that there may or may not be path components before the filename."
5583 #: ../source/TortoiseGit_en.xml:6884
5584 msgid "If directory names are present in a path, the matching algorithm will not trim them off, so pattern <literal>Fred.*</literal> will match <literal>Fred.c</literal> but not <literal>subdir/Fred.c</literal>. This is significant if you add a folder which contains some files that you want to be ignored, because those filenames will be preceded with the folder name when Git compares them with the ignore pattern."
5588 #: ../source/TortoiseGit_en.xml:6893
5589 msgid "The <literal>/</literal> character is not treated in any special way for pattern matching purposes, so the pattern <literal>abc*xyz</literal> would match <literal>abcdxyz</literal> but also <literal>abcdir/subdir/anything/morexyz</literal>."
5593 #: ../source/TortoiseGit_en.xml:6899
5594 msgid "To ignore all <literal>CVS</literal> folders you should either specify a pattern of <literal>*CVS</literal> or better, the pair <literal>CVS */CVS</literal>. The first option works, but would also exclude something called <literal>ThisIsNotCVS</literal>. Using <literal>*/CVS</literal> alone will not work on an immediate child <literal>CVS</literal> folder, and <literal>CVS</literal> alone will not work on sub-folders."
5598 #: ../source/TortoiseGit_en.xml:6908
5599 msgid "If you want an official definition for globbing, you can find it in the IEEE specifications for the shell command language <ulink url=\"http://www.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_13\"><citetitle>Pattern Matching Notation</citetitle></ulink>."
5603 #: ../source/TortoiseGit_en.xml:6918
5604 msgid "Deleting, Moving and Renaming"
5608 #: ../source/TortoiseGit_en.xml:6924
5609 msgid "Explorer context menu for versioned files"
5613 #: ../source/TortoiseGit_en.xml:6919
5614 msgid "Unlike CVS, Git allows renaming and moving of files and folders. So there are menu entries for delete and rename in the TortoiseGit submenu. <placeholder-1/>"
5618 #: ../source/TortoiseGit_en.xml:6929
5619 msgid "Deleting files and folders"
5623 #: ../source/TortoiseGit_en.xml:6931
5628 #: ../source/TortoiseGit_en.xml:6934
5633 #: ../source/TortoiseGit_en.xml:6936
5634 msgid "Use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Delete</guimenuitem></menuchoice> to remove files or folders from Git."
5638 #: ../source/TortoiseGit_en.xml:6944
5639 msgid "When you <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Delete</guimenuitem></menuchoice> a file, it is removed from your working copy immediately as well as being marked for deletion in the repository on next commit. The file's parent folder shows a <quote>deleted</quote> icon overlay. Up until you commit the change, you can get the file back using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Revert</guimenuitem></menuchoice> on the parent folder."
5643 #: ../source/TortoiseGit_en.xml:6960
5644 msgid "When you <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Delete</guimenuitem></menuchoice> a folder, it remains in your working copy, but the overlay changes to indicate that it is marked for deletion. Up until you commit the change, you can get the folder back using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Revert</guimenuitem></menuchoice> on the folder itself. This difference in behaviour between files and folders is a part of Git, not TortoiseGit."
5648 #: ../source/TortoiseGit_en.xml:6977
5649 msgid "If you want to delete an item from the repository, but keep it locally as an unversioned file/folder, use <menuchoice><guimenu>Extended Context Menu</guimenu><guimenuitem>Delete (keep local)</guimenuitem></menuchoice>. You have to hold the <keycap>Shift</keycap> key while right clicking on the item in the explorer list pane (right pane) in order to see this in the extended context menu."
5653 #: ../source/TortoiseGit_en.xml:6988
5654 msgid "If a <emphasis>file</emphasis> is deleted via the explorer instead of using the TortoiseGit context menu, the commit dialog shows those files and lets you remove them from version control too before the commit. However, if you update your working copy, Git will spot the missing file and replace it with the latest version from the repository. If you need to delete a version-controlled file, always use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Delete</guimenuitem></menuchoice> so that Git doesn't have to guess what you really want to do."
5658 #: ../source/TortoiseGit_en.xml:7002
5659 msgid "If a <emphasis>folder</emphasis> is deleted via the explorer instead of using the TortoiseGit context menu, your working copy will be broken and you will be unable to commit. If you update your working copy, Git will replace the missing folder with the latest version from the repository and you can then delete it the correct way using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Delete</guimenuitem></menuchoice>."
5663 #: ../source/TortoiseGit_en.xml:7015
5664 msgid "Getting a deleted file or folder back"
5668 #: ../source/TortoiseGit_en.xml:7016
5669 msgid "If you have deleted a file or a folder and already committed that delete operation to the repository, then a normal <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Revert</guimenuitem></menuchoice> can't bring it back anymore. But the file or folder is not lost at all. If you know the revision the file or folder got deleted (if you don't, use the log dialog to find out) open the repository browser and switch to that revision. Then select the file or folder you deleted, right-click and select <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Copy to...</guimenuitem></menuchoice> as the target for that copy operation select the path to your working copy."
5673 #: ../source/TortoiseGit_en.xml:7038
5674 msgid "Moving files and folders"
5680 #: ../source/TortoiseGit_en.xml:7040
5681 #: ../source/TortoiseGit_en.xml:9223
5682 #: ../source/TortoiseGit_en.xml:12815
5687 #: ../source/TortoiseGit_en.xml:7043
5692 #: ../source/TortoiseGit_en.xml:7046
5693 msgid "If you want to do a simple in-place rename of a file or folder, use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Rename...</guimenuitem></menuchoice> Enter the new name for the item and you're done."
5697 #: ../source/TortoiseGit_en.xml:7061
5698 msgid "select the files or directories you want to move"
5702 #: ../source/TortoiseGit_en.xml:7077
5703 msgid "in the popup menu select <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>SVN Move versioned files here</guimenuitem></menuchoice>"
5707 #: ../source/TortoiseGit_en.xml:7055
5708 msgid "If you want to move files around inside your working copy, perhaps to a different sub-folder, use the right-mouse drag-and-drop handler: <placeholder-1/>"
5712 #: ../source/TortoiseGit_en.xml:7088
5713 msgid "Commit the parent folder"
5717 #: ../source/TortoiseGit_en.xml:7089
5718 msgid "Since renames and moves are done as a delete followed by an add you must commit the parent folder of the renamed/moved file so that the deleted part of the rename/move will show up in the commit dialog. If you don't commit the removed part of the rename/move, it will stay behind in the repository and when your co-workers update, the old file will not be removed. i.e. they will have <emphasis>both</emphasis> the old and the new copies."
5722 #: ../source/TortoiseGit_en.xml:7099
5723 msgid "You <emphasis>must</emphasis> commit a folder rename before changing any of the files inside the folder, otherwise your working copy can get really messed up."
5727 #: ../source/TortoiseGit_en.xml:7105
5728 msgid "You can also use the repository browser to move items around. Read <xref linkend=\"tsvn-dug-repobrowser\"/> to find out more."
5732 #: ../source/TortoiseGit_en.xml:7110
5733 msgid "Do Not SVN Move Externals"
5737 #: ../source/TortoiseGit_en.xml:7111
5738 msgid "You should <emphasis>not</emphasis> use the TortoiseGit <guilabel>Move</guilabel> or <guilabel>Rename</guilabel> commands on a folder which has been created using <literal>svn:externals</literal>. This action would cause the external item to be deleted from its parent repository, probably upsetting many other people. If you need to move an externals folder you should use an ordinary shell move, then adjust the <literal>svn:externals</literal> properties of the source and destination parent folders."
5742 #: ../source/TortoiseGit_en.xml:7126
5743 msgid "Changing case in a filename"
5747 #: ../source/TortoiseGit_en.xml:7128
5752 #: ../source/TortoiseGit_en.xml:7131
5753 msgid "Making case-only changes to a filename is tricky with Git on Windows, because for a short time during a rename, both filenames have to exist. As Windows has a case-insensitive file system, this does not work using the usual Rename command."
5757 #: ../source/TortoiseGit_en.xml:7137
5758 msgid "Fortunately there are (at least) two possible methods to rename a file without losing its log history. It is important to rename it within Git. Just renaming in the explorer will corrupt your working copy!"
5762 #: ../source/TortoiseGit_en.xml:7147
5763 msgid "Commit the changes in your working copy."
5767 #: ../source/TortoiseGit_en.xml:7152
5768 msgid "Rename the file from UPPERcase to upperCASE directly in the repository using the repository browser."
5772 #: ../source/TortoiseGit_en.xml:7158
5773 msgid "Update your working copy."
5777 #: ../source/TortoiseGit_en.xml:7143
5778 msgid "Solution A) (recommended) <placeholder-1/>"
5782 #: ../source/TortoiseGit_en.xml:7168
5783 msgid "Rename from UPPERcase to UPPERcase_ with the rename command in the TortoiseGit submenu."
5788 #: ../source/TortoiseGit_en.xml:7174
5789 #: ../source/TortoiseGit_en.xml:7184
5790 msgid "Commit the changes."
5794 #: ../source/TortoiseGit_en.xml:7179
5795 msgid "Rename from UPPERcase_ to upperCASE."
5799 #: ../source/TortoiseGit_en.xml:7164
5800 msgid "Solution B) <placeholder-1/>"
5804 #: ../source/TortoiseGit_en.xml:7192
5805 msgid "Dealing with filename case conflicts"
5809 #: ../source/TortoiseGit_en.xml:7193
5810 msgid "If the repository already contains two files with the same name but differing only in case (e.g. <filename>TEST.TXT</filename> and <filename>test.txt</filename>), you will not be able to update or checkout the parent directory on a Windows client. Whilst Git supports case-sensitive filenames, Windows does not."
5814 #: ../source/TortoiseGit_en.xml:7201
5815 msgid "This sometimes happens when two people commit, from separate working copies, files which happen to have the same name, but with a case difference. It can also happen when files are committed from a system with a case-sensitive file system, like Linux."
5819 #: ../source/TortoiseGit_en.xml:7208
5820 msgid "In that case, you have to decide which one of them you want to keep and delete (or rename) the other one from the repository."
5824 #: ../source/TortoiseGit_en.xml:7213
5825 msgid "Preventing two files with the same name"
5829 #: ../source/TortoiseGit_en.xml:7214
5830 msgid "There is a server hook script available at: <ulink url=\"http://svn.collab.net/repos/svn/trunk/contrib/hook-scripts/\"><citetitle>http://svn.collab.net/repos/svn/trunk/contrib/hook-scripts/</citetitle></ulink> that will prevent checkins which result in case conflicts."
5834 #: ../source/TortoiseGit_en.xml:7224
5835 msgid "Repairing File Renames"
5839 #: ../source/TortoiseGit_en.xml:7225
5840 msgid "Sometimes your friendly IDE will rename files for you as part of a refactoring exercise, and of course it doesn't tell Git. If you try to commit your changes, Git will see the old filename as missing and the new one as an unversioned file. You could just check the new filename to get it added in, but you would then lose the history tracing, as Git does not know the files are related."
5844 #: ../source/TortoiseGit_en.xml:7233
5845 msgid "A better way is to notify Git that this change is actually a rename, and you can do this within the <guilabel>Commit</guilabel> and <guilabel>Check for Modifications</guilabel> dialogs. Simply select both the old name (missing) and the new name (unversioned) and use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Repair Move</guimenuitem></menuchoice> to pair the two files as a rename."
5849 #: ../source/TortoiseGit_en.xml:7247
5850 msgid "Deleting Unversioned Files"
5854 #: ../source/TortoiseGit_en.xml:7248
5855 msgid "Usually you set your ignore list such that all generated files are ignored in Git. But what if you want to clear all those ignored items to produce a clean build? Usually you would set that in your makefile, but if you are debugging the makefile, or changing the build system it is useful to have a way of clearing the decks."
5859 #: ../source/TortoiseGit_en.xml:7255
5860 msgid "TortoiseGit provides just such an option using <menuchoice><guimenu>Extended Context Menu</guimenu><guimenuitem>Delete unversioned items...</guimenuitem></menuchoice>. You have to hold the <keycap>Shift</keycap> while right clicking on a folder in the explorer list pane (right pane) in order to see this in the extended context menu. This will produce a dialog which lists all unversioned files anywhere in your working copy. You can then select or deselect items to be removed."
5864 #: ../source/TortoiseGit_en.xml:7267
5865 msgid "When such items are deleted, the recycle bin is used, so if you make a mistake here and delete a file that should have been versioned, you can still recover it."
5869 #: ../source/TortoiseGit_en.xml:7275
5870 msgid "Undo Changes"
5875 #: ../source/TortoiseGit_en.xml:7277
5876 #: ../source/TortoiseGit_en.xml:12943
5881 #: ../source/TortoiseGit_en.xml:7280
5886 #: ../source/TortoiseGit_en.xml:7295
5887 msgid "Revert dialog"
5891 #: ../source/TortoiseGit_en.xml:7282
5892 msgid "If you want to undo all changes you made in a file since the last update you need to select the file, <action>right click</action> to pop up the context menu and then select the command <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Revert</guimenuitem></menuchoice> A dialog will pop up showing you the files that you've changed and can revert. Select those you want to revert and click on <guibutton>OK</guibutton>. <placeholder-1/>"
5896 #: ../source/TortoiseGit_en.xml:7299
5897 msgid "If you want to undo a deletion or a rename, you need to use Revert on the parent folder as the deleted item does not exist for you to right-click on."
5901 #: ../source/TortoiseGit_en.xml:7304
5902 msgid "If you want to undo the addition of an item, this appears in the context menu as <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Undo add...</guimenuitem></menuchoice>. This is really a revert as well, but the name has been changed to make it more obvious."
5907 #: ../source/TortoiseGit_en.xml:7314
5908 #: ../source/TortoiseGit_en.xml:8900
5909 msgid "The columns in this dialog can be customized in the same way as the columns in the <guilabel>Check for modifications</guilabel> dialog. Read <xref linkend=\"tsvn-dug-wcstatus-2\"/> for further details."
5913 #: ../source/TortoiseGit_en.xml:7320
5914 msgid "Undoing Changes which have been Committed"
5918 #: ../source/TortoiseGit_en.xml:7321
5919 msgid "<menuchoice><guimenuitem>Revert</guimenuitem></menuchoice> will only undo your local changes. It does <emphasis>not</emphasis> undo any changes which have already been committed. If you want to undo all the changes which were committed in a particular revision, read <xref linkend=\"tsvn-dug-showlog\"/> for further information."
5926 #: ../source/TortoiseGit_en.xml:7333
5927 #: ../source/TortoiseGit_en.xml:13561
5928 #: ../source/TortoiseGit_en.xml:14602
5929 #: ../source/TortoiseGit_en.xml:15380
5934 #: ../source/TortoiseGit_en.xml:7335
5939 #: ../source/TortoiseGit_en.xml:7337
5940 msgid "If a Git command cannot complete successfully, perhaps due to server problems, your working copy can be left in an inconsistent state. In that case you need to use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Cleanup</guimenuitem></menuchoice> on the folder. It is a good idea to do this at the top level of the working copy."
5944 #: ../source/TortoiseGit_en.xml:7348
5945 msgid "Cleanup has another useful side effect. If a file date changes but its content doesn't, Git cannot tell whether it has really changed except by doing a byte-by-byte comparison with the pristine copy. If you have a lot of files in this state it makes acquiring status very slow, which will make many dialogs slow to respond. Executing a Cleanup on your working copy will repair these <quote>broken</quote> timestamps and restore status checks to full speed."
5949 #: ../source/TortoiseGit_en.xml:7359
5950 msgid "Use Commit Timestamps"
5954 #: ../source/TortoiseGit_en.xml:7360
5955 msgid "Some earlier releases of Git were affected by a bug which caused timestamp mismatch when you check out with the <guilabel>Use commit timestamps</guilabel> option checked. Use the Cleanup command to speed up these working copies."
5959 #: ../source/TortoiseGit_en.xml:7370
5960 msgid "Project Settings"
5964 #: ../source/TortoiseGit_en.xml:7372
5969 #: ../source/TortoiseGit_en.xml:7376
5970 msgid "Explorer property page, Git tab"
5974 #: ../source/TortoiseGit_en.xml:7374
5975 msgid "<placeholder-1/> Sometimes you want to have more detailed information about a file/directory than just the icon overlay. You can get all the information Git provides in the explorer properties dialog. Just select the file or directory and select <menuchoice><guimenu>Windows Menu</guimenu><guimenuitem>properties</guimenuitem></menuchoice> in the context menu (note: this is the normal properties menu entry the explorer provides, not the one in the TortoiseGit submenu!). In the properties dialog box TortoiseGit has added a new property page for files/folders under Git control, where you can see all relevant information about the selected file/directory."
5979 #: ../source/TortoiseGit_en.xml:7396
5980 msgid "Git Properties"
5984 #: ../source/TortoiseGit_en.xml:7398
5985 msgid "Git properties"
5989 #: ../source/TortoiseGit_en.xml:7404
5990 msgid "Git property page"
5994 #: ../source/TortoiseGit_en.xml:7402
5995 msgid "<placeholder-1/> You can read and set the Git properties from the Windows properties dialog, but also from <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>properties</guimenuitem></menuchoice> and within TortoiseGit's status lists, from <menuchoice><guimenu>Context menu</guimenu><guimenuitem>properties</guimenuitem></menuchoice>."
5999 #: ../source/TortoiseGit_en.xml:7419
6000 msgid "You can add your own properties, or some properties with a special meaning in Git. These begin with <literal>svn:</literal>. <literal>svn:externals</literal> is such a property; see how to handle externals in <xref linkend=\"tsvn-dug-import-4\"/>."
6004 #: ../source/TortoiseGit_en.xml:7426
6005 msgid "svn:keywords"
6009 #: ../source/TortoiseGit_en.xml:7428
6014 #: ../source/TortoiseGit_en.xml:7431
6015 msgid "expand keywords"
6019 #: ../source/TortoiseGit_en.xml:7441
6020 msgid "Date of last known commit. This is based on information obtained when you update your working copy. It does <emphasis>not</emphasis> check the repository to find more recent changes."
6024 #: ../source/TortoiseGit_en.xml:7452
6025 msgid "Revision of last known commit."
6029 #: ../source/TortoiseGit_en.xml:7460
6030 msgid "Author who made the last known commit."
6034 #: ../source/TortoiseGit_en.xml:7468
6035 msgid "The full URL of this file in the repository."
6039 #: ../source/TortoiseGit_en.xml:7476
6040 msgid "A compressed combination of the previous four keywords."
6044 #: ../source/TortoiseGit_en.xml:7433
6045 msgid "Git supports CVS-like keyword expansion which can be used to embed filename and revision information within the file itself. Keywords currently supported are: <placeholder-1/>"
6049 #: ../source/TortoiseGit_en.xml:7484
6050 msgid "To find out how to use these keywords, look at the <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.advanced.props.special.keywords.html\"><citetitle>svn:keywords section</citetitle></ulink> in the Git book, which gives a full description of these keywords and how to enable and use them."
6054 #: ../source/TortoiseGit_en.xml:7494
6055 msgid "For more information about properties in Git see the <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.advanced.props.html\"><citetitle>Special Properties</citetitle></ulink>."
6059 #: ../source/TortoiseGit_en.xml:7501
6060 msgid "Adding and Editing Properties"
6064 #: ../source/TortoiseGit_en.xml:7504
6065 msgid "Adding properties"
6069 #: ../source/TortoiseGit_en.xml:7502
6070 msgid "<placeholder-1/> To add a new property, first click on <guilabel>Add...</guilabel>. Select the required property name from the combo box, or type in a name of your own choice, then enter a value in the box below. Properties which take multiple values, such as an ignore list, can be entered on multiple lines. Click on <guibutton>OK</guibutton> to add that property to the list."
6074 #: ../source/TortoiseGit_en.xml:7514
6075 msgid "If you want to apply a property to many items at once, select the files/folders in explorer, then select <menuchoice><guimenu>Context menu</guimenu><guimenuitem>properties</guimenuitem></menuchoice>"
6079 #: ../source/TortoiseGit_en.xml:7522
6080 msgid "If you want to apply the property to <emphasis>every</emphasis> file and folder in the hierarchy below the current folder, check the <guilabel>Recursive</guilabel> checkbox."
6084 #: ../source/TortoiseGit_en.xml:7527
6085 msgid "Some properties, for example <literal>svn:needs-lock</literal>, can only be applied to files, so the property name doesn't appear in the drop down list for folders. You can still apply such a property recursively to all files in a hierarchy, but you have to type in the property name yourself."
6089 #: ../source/TortoiseGit_en.xml:7534
6090 msgid "If you wish to edit an existing property, select that property from the list of existing properties, then click on <guibutton>Edit...</guibutton>."
6094 #: ../source/TortoiseGit_en.xml:7538
6095 msgid "If you wish to remove an existing property, select that property from the list of existing properties, then click on <guibutton>Remove</guibutton>."
6099 #: ../source/TortoiseGit_en.xml:7542
6100 msgid "The <literal>svn:externals</literal> property can be used to pull in other projects from the same repository or a completely different repository. For more information, read <xref linkend=\"tsvn-dug-import-4\"/>."
6104 #: ../source/TortoiseGit_en.xml:7550
6105 msgid "Exporting and Importing Properties"
6109 #: ../source/TortoiseGit_en.xml:7551
6110 msgid "Often you will find yourself applying the same set of properties many times, for example <literal>bugtraq:logregex</literal>. To simplify the process of copying properties from one project to another, you can use the Export/Import feature."
6114 #: ../source/TortoiseGit_en.xml:7557
6115 msgid "From the file or folder where the properties are already set, use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>properties</guimenuitem></menuchoice>, select the properties you wish to export and click on <guibutton>Export...</guibutton>. You will be prompted for a filename where the property names and values will be saved."
6119 #: ../source/TortoiseGit_en.xml:7567
6120 msgid "From the folder(s) where you wish to apply these properties, use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>properties</guimenuitem></menuchoice> and click on <guibutton>Import...</guibutton>. You will be prompted for a filename to import from, so navigate to the place you saved the export file previously and select it. The properties will be added to the folders non-recursively."
6124 #: ../source/TortoiseGit_en.xml:7578
6125 msgid "If you want to add properties to a tree recursively, follow the steps above, then in the property dialog select each property in turn, click on <guibutton>Edit...</guibutton>, check the <guilabel>Apply property recursively</guilabel> box and click on <guibutton>OK</guibutton>."
6129 #: ../source/TortoiseGit_en.xml:7585
6130 msgid "The Import file format is binary and proprietary to TortoiseGit. Its only purpose is to transfer properties using Import and Export, so there is no need to edit these files."
6134 #: ../source/TortoiseGit_en.xml:7592
6135 msgid "Binary Properties"
6139 #: ../source/TortoiseGit_en.xml:7593
6140 msgid "TortoiseGit can handle binary property values using files. To read a binary property value, <guibutton>Save...</guibutton> to a file. To set a binary value, use a hex editor or other appropriate tool to create a file with the content you require, then <guibutton>Load...</guibutton> from that file."
6144 #: ../source/TortoiseGit_en.xml:7600
6145 msgid "Although binary properties are not often used, they can be useful in some applications. For example if you are storing huge graphics files, or if the application used to load the file is huge, you might want to store a thumbnail as a property so you can obtain a preview quickly."
6149 #: ../source/TortoiseGit_en.xml:7608
6150 msgid "Commit properties"
6154 #: ../source/TortoiseGit_en.xml:7609
6155 msgid "Git properties are versioned. After you change or add a property you have to commit your changes."
6159 #: ../source/TortoiseGit_en.xml:7615
6160 msgid "Conflicts on properties"
6164 #: ../source/TortoiseGit_en.xml:7616
6165 msgid "If there's a conflict on committing the changes, because another user has changed the same property, Git generates a <filename>.prej</filename> file. Delete this file after you have resolved the conflict."
6169 #: ../source/TortoiseGit_en.xml:7624
6170 msgid "Automatic property setting"
6174 #: ../source/TortoiseGit_en.xml:7625
6175 msgid "You can configure Git to set properties automatically on files and folders when they are added to the repository. Read <xref linkend=\"tsvn-dug-settings\"/> for further information."
6179 #: ../source/TortoiseGit_en.xml:7633
6180 msgid "TortoiseGit Project Properties"
6184 #: ../source/TortoiseGit_en.xml:7635
6185 msgid "project properties"
6189 #: ../source/TortoiseGit_en.xml:7638
6190 msgid "TortoiseGit properties"
6194 #: ../source/TortoiseGit_en.xml:7645
6195 msgid "<literal>tsvn:logminsize</literal> sets the minimum length of a log message for a commit. If you enter a shorter message than specified here, the commit is disabled. This feature is very useful for reminding you to supply a proper descriptive message for every commit. If this property is not set, or the value is zero, empty log messages are allowed."
6199 #: ../source/TortoiseGit_en.xml:7654
6200 msgid "<literal>tsvn:lockmsgminsize</literal> sets the minimum length of a lock message. If you enter a shorter message than specified here, the lock is disabled. This feature is very useful for reminding you to supply a proper descriptive message for every lock you get. If this property is not set, or the value is zero, empty lock messages are allowed."
6204 #: ../source/TortoiseGit_en.xml:7665
6205 msgid "<literal>tsvn:logwidthmarker</literal> is used with projects which require log messages to be formatted with some maximum width (typically 80 characters) before a line break. Setting this property to a non-zero will do 2 things in the log message entry dialog: it places a marker to indicate the maximum width, and it disables word wrap in the display, so that you can see whether the text you entered is too long. Note: this feature will only work correctly if you have a fixed-width font selected for log messages."
6209 #: ../source/TortoiseGit_en.xml:7678
6210 msgid "<literal>tsvn:logtemplate</literal> is used with projects which have rules about log message formatting. The property holds a multi-line text string which will be inserted in the commit message box when you start a commit. You can then edit it to include the required information. Note: if you are also using <literal>tsvn:logminsize</literal>, be sure to set the length longer than the template or you will lose the protection mechanism."
6214 #: ../source/TortoiseGit_en.xml:7689
6215 msgid "Git allows you to set <quote>autoprops</quote> which will be applied to newly added or imported files, based on the file extension. This depends on every client having set appropriate autoprops in their Git configuration file. <literal>tsvn:autoprops</literal> can be set on folders and these will be merged with the user's local autoprops when importing or adding files."
6219 #: ../source/TortoiseGit_en.xml:7698
6220 msgid "If there is a conflict between the local autoprops and <literal>tsvn:autoprops</literal>, the project settings take precedence because they are specific to that project."
6224 #: ../source/TortoiseGit_en.xml:7705
6225 msgid "In the Commit dialog you have the option to paste in the list of changed files, including the status of each file (added, modified, etc). <literal>tsvn:logfilelistenglish</literal> defines whether the file status is inserted in English or in the localized language. If the property is not set, the default is <literal>true</literal>."
6229 #: ../source/TortoiseGit_en.xml:7716
6230 msgid "TortoiseGit can use spell checker modules which are also used by OpenOffice and Mozilla. If you have those installed this property will determine which spell checker to use, i.e. in which language the log messages for your project should be written. <literal>tsvn:projectlanguage</literal> sets the language module the spell checking engine should use when you enter a log message. You can find the values for your language on this page: <ulink url=\"http://msdn2.microsoft.com/en-us/library/ms776260.aspx\"><citetitle>MSDN: Language Identifiers</citetitle></ulink>."
6234 #: ../source/TortoiseGit_en.xml:7730
6235 msgid "You can enter this value in decimal, or in hexadecimal if prefixed with <literal>0x</literal>. For example English (US) can be entered as <literal>0x0409</literal> or <literal>1033</literal>."
6239 #: ../source/TortoiseGit_en.xml:7738
6240 msgid "The property <literal>tsvn:logsummary</literal> is used to extract a portion of the log message which is then shown in the log dialog as the log message summary."
6244 #: ../source/TortoiseGit_en.xml:7743
6245 msgid "The value of the <literal>tsvn:logsummary</literal> property must be set to a one line regex string which contains one regex group. Whatever matches that group is used as the summary."
6249 #: ../source/TortoiseGit_en.xml:7749
6250 msgid "An example: <literal>\\[SUMMARY\\]:\\s+(.*)</literal> Will catch everything after <quote>[SUMMARY]</quote> in the log message and use that as the summary."
6254 #: ../source/TortoiseGit_en.xml:7757
6255 msgid "When you want to add a new property, you can either pick one from the list in the combo box, or you can enter any property name you like. If your project uses some custom properties, and you want those properties to appear in the list in the combo box (to avoid typos when you enter a property name), you can create a list of your custom properties using <literal>tsvn:userfileproperties</literal> and <literal>tsvn:userdirproperties</literal>. Apply these properties to a folder. When you go to edit the properties of any child item, your custom properties will appear in the list of pre-defined property names."
6259 #: ../source/TortoiseGit_en.xml:7640
6260 msgid "TortoiseGit has a few special properties of its own, and these begin with <literal>tsvn:</literal>. <placeholder-1/>"
6265 #: ../source/TortoiseGit_en.xml:7773
6266 #: ../source/TortoiseGit_en.xml:10168
6267 msgid "Some <literal>tsvn:</literal> properties require a <literal>true/false</literal> value. TortoiseGit also understands <literal>yes</literal> as a synonym for <literal>true</literal> and <literal>no</literal> as a synonym for <literal>false</literal>."
6271 #: ../source/TortoiseGit_en.xml:7779
6272 msgid "TortoiseGit can integrate with some bug tracking tools. This uses project properties that start with <literal>bugtraq:</literal>. Read <xref linkend=\"tsvn-dug-bugtracker\"/> for further information."
6276 #: ../source/TortoiseGit_en.xml:7784
6277 msgid "It can also integrate with some web-based repository browsers, using project properties that start with <literal>webviewer:</literal>. Read <xref linkend=\"tsvn-dug-repoviewer\"/> for further information."
6281 #: ../source/TortoiseGit_en.xml:7790
6282 msgid "Set the project properties on folders"
6286 #: ../source/TortoiseGit_en.xml:7791
6287 msgid "These special project properties must be set on <emphasis>folders</emphasis> for the system to work. When you commit a file or folder the properties are read from that folder. If the properties are not found there, TortoiseGit will search upwards through the folder tree to find them until it comes to an unversioned folder, or the tree root (eg. <literal>C:\\</literal>) is found. If you can be sure that each user checks out only from e.g <filename>trunk/</filename> and not some sub-folder, then it is sufficient to set the properties on <filename>trunk/</filename>. If you can't be sure, you should set the properties recursively on each sub-folder. A property setting deeper in the project hierarchy overrides settings on higher levels (closer to <filename>trunk/</filename>)."
6291 #: ../source/TortoiseGit_en.xml:7805
6292 msgid "For project properties <emphasis>only</emphasis> you can use the <guilabel>Recursive</guilabel> checkbox to set the property to all sub-folders in the hierarchy, without also setting it on all files."
6296 #: ../source/TortoiseGit_en.xml:7812
6297 msgid "When you add new sub-folders using TortoiseGit, any project properties present in the parent folder will automatically be added to the new child folder too."
6301 #: ../source/TortoiseGit_en.xml:7818
6302 msgid "Although TortoiseGit's project properties are extremely useful, they only work with TortoiseGit, and some will only work in newer versions of TortoiseGit. If people working on your project use a variety of Git clients, or possibly have old versions of TortoiseGit, you may want to use repository hooks to enforce project policies. project properties can only help to implement a policy, they cannot enforce it."
6306 #: ../source/TortoiseGit_en.xml:7831
6307 msgid "Branching / Tagging"
6312 #: ../source/TortoiseGit_en.xml:7839
6313 #: ../source/TortoiseGit_en.xml:9220
6318 #: ../source/TortoiseGit_en.xml:7842
6319 msgid "mark release"
6323 #: ../source/TortoiseGit_en.xml:7845
6324 msgid "One of the features of version control systems is the ability to isolate changes onto a separate line of development. This line is known as a <firstterm>branch</firstterm>. Branches are often used to try out new features without disturbing the main line of development with compiler errors and bugs. As soon as the new feature is stable enough then the development branch is <firstterm>merged</firstterm> back into the main branch (trunk)."
6328 #: ../source/TortoiseGit_en.xml:7855
6329 msgid "Another feature of version control systems is the ability to mark particular revisions (e.g. a release version), so you can at any time recreate a certain build or environment. This process is known as <firstterm>tagging</firstterm>."
6333 #: ../source/TortoiseGit_en.xml:7861
6334 msgid "Git does not have special commands for branching or tagging, but uses so-called <quote>cheap copies</quote> instead. Cheap copies are similar to hard links in Unix, which means that instead of making a complete copy in the repository, an internal link is created, pointing to a specific tree/revision. As a result branches and tags are very quick to create, and take up almost no extra space in the repository."
6338 #: ../source/TortoiseGit_en.xml:7871
6339 msgid "Creating a Branch or Tag"
6343 #: ../source/TortoiseGit_en.xml:7876
6344 msgid "The Branch/Tag Dialog"
6348 #: ../source/TortoiseGit_en.xml:7872
6349 msgid "If you have imported your project with the recommended directory structure, creating a branch or tag version is very simple: <placeholder-1/> Select the folder in your working copy which you want to copy to a branch or tag, then select the command <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Branch/Tag...</guimenuitem></menuchoice>."
6353 #: ../source/TortoiseGit_en.xml:7886
6355 "The default destination URL for the new branch will be the source URL on which your working copy is based. You will need to edit that URL to the new path for your branch/tag. So instead of <screen>\n"
6356 " http://svn.collab.net/repos/ProjectName/trunk\n"
6357 "</screen> you might now use something like <screen>\n"
6358 " http://svn.collab.net/repos/ProjectName/tags/Release_1.10\n"
6359 "</screen> If you can't remember the naming convention you used last time, click the button on the right to open the repository browser so you can view the existing repository structure."
6364 #: ../source/TortoiseGit_en.xml:7907
6365 #: ../source/TortoiseGit_en.xml:14648
6366 msgid "HEAD revision in the repository"
6370 #: ../source/TortoiseGit_en.xml:7909
6371 msgid "The new branch is copied directly in the repository from the HEAD revision. No data needs to be transferred from your working copy, and the branch is created very quickly."
6375 #: ../source/TortoiseGit_en.xml:7918
6376 msgid "Specific revision in the repository"
6380 #: ../source/TortoiseGit_en.xml:7920
6381 msgid "The new branch is copied directly in the repository but you can choose an older revision. This is useful if you forgot to make a tag when you released your project last week. If you can't remember the revision number, click the button on the right to show the revision log, and select the revision number from there. Again no data is transferred from your working copy, and the branch is created very quickly."
6385 #: ../source/TortoiseGit_en.xml:7935
6386 msgid "The new branch is an identical copy of your local working copy. If you have updated some files to an older revision in your WC, or if you have made local changes, that is exactly what goes into the copy. Naturally this sort of complex tag may involve transferring data from your WC back to the repository if it does not exist there already."
6390 #: ../source/TortoiseGit_en.xml:7902
6391 msgid "Now you have to select the source of the copy. Here you have three options: <placeholder-1/>"
6395 #: ../source/TortoiseGit_en.xml:7948
6396 msgid "If you want your working copy to be switched to the newly created branch automatically, use the <guilabel>Switch working copy to new branch/tag</guilabel> checkbox. But if you do that, first make sure that your working copy does not contain modifications. If it does, those changes will be merged into the branch WC when you switch."
6400 #: ../source/TortoiseGit_en.xml:7956
6401 msgid "Press <guibutton>OK</guibutton> to commit the new copy to the repository. Don't forget to supply a log message. Note that the copy is created <emphasis>inside the repository</emphasis>."
6405 #: ../source/TortoiseGit_en.xml:7961
6406 msgid "Note that unless you opted to switch your working copy to the newly created branch, creating a Branch or Tag does <emphasis>not</emphasis> affect your working copy. Even if you create the branch from your WC, those changes are committed to the new branch, not to the trunk, so your WC may still be marked as modified with respect to the trunk."
6410 #: ../source/TortoiseGit_en.xml:7970
6411 msgid "To Checkout or to Switch..."
6415 #: ../source/TortoiseGit_en.xml:7973
6420 #: ../source/TortoiseGit_en.xml:7975
6421 msgid "...that is (not really) the question. While a checkout downloads everything from the desired branch in the repository to your working directory, <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Switch...</guimenuitem></menuchoice> only transfers the changed data to your working copy. Good for the network load, good for your patience. :-)"
6425 #: ../source/TortoiseGit_en.xml:7991
6426 msgid "<menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Checkout</guimenuitem></menuchoice> to make a fresh checkout in an empty folder. You can check out to any location on your local disk and you can create as many working copies from your repository as you like."
6430 #: ../source/TortoiseGit_en.xml:8003
6431 msgid "Switch your current working copy to the newly created copy in the repository. Again select the top level folder of your project and use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Switch...</guimenuitem></menuchoice> from the context menu."
6435 #: ../source/TortoiseGit_en.xml:8013
6436 msgid "In the next dialog enter the URL of the branch you just created. Select the <guilabel>Head Revision</guilabel> radio button and click on <guibutton>OK</guibutton>. Your working copy is switched to the new branch/tag."
6440 #: ../source/TortoiseGit_en.xml:8021
6441 msgid "Switch works just like Update in that it never discards your local changes. Any changes you have made to your working copy which have not yet been committed will be merged when you do the Switch. If you do not want this to happen then you must either commit the changes before switching, or revert your working copy to an already-committed revision (typically HEAD)."
6445 #: ../source/TortoiseGit_en.xml:8031
6446 msgid "If you want to work on trunk and branch, but don't want the expense of a fresh checkout, you can use Windows Explorer to make a copy of your trunk checkout in another folder, then <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Switch...</guimenuitem></menuchoice> that copy to your new branch."
6450 #: ../source/TortoiseGit_en.xml:8044
6451 msgid "The Switch Dialog"
6455 #: ../source/TortoiseGit_en.xml:7986
6456 msgid "To be able to work with your freshly generated branch or tag you have several ways to handle it. You can: <placeholder-1/><placeholder-2/>"
6460 #: ../source/TortoiseGit_en.xml:8053
6461 msgid "Tags are typically used to create a static snapshot of the project at a particular stage. As such they not normally used for development - that's what branches are for, which is the reason we recommended the <filename>/trunk /branches /tags</filename> repository structure in the first place. Working on a tag revision is <emphasis>not a good idea</emphasis>, but because your local files are not write protected there is nothing to stop you doing this by mistake. However, if you try to commit to a path in the repository which contains <filename>/tags/</filename>, TortoiseGit will warn you."
6465 #: ../source/TortoiseGit_en.xml:8069
6466 msgid "It may be that you need to make further changes to a release which you have already tagged. The correct way to handle this is to create a new branch from the tag first and commit the branch. Do your Changes on this branch and then create a new tag from this new branch, e.g. <filename>Version_1.0.1</filename>."
6470 #: ../source/TortoiseGit_en.xml:8079
6471 msgid "If you modify a working copy created from a branch and commit, then all changes go to the new branch and <emphasis>not</emphasis> the trunk. Only the modifications are stored. The rest remains a cheap copy."
6475 #: ../source/TortoiseGit_en.xml:8048
6476 msgid "Although Git itself makes no distinction between tags and branches, the way they are typically used differs a bit. <placeholder-1/>"
6480 #: ../source/TortoiseGit_en.xml:8092
6488 #: ../source/TortoiseGit_en.xml:8095
6489 #: ../source/TortoiseGit_en.xml:8211
6490 #: ../source/TortoiseGit_en.xml:8287
6491 #: ../source/TortoiseGit_en.xml:8320
6496 #: ../source/TortoiseGit_en.xml:8097
6497 msgid "Where branches are used to maintain separate lines of development, at some stage you will want to merge the changes made on one branch back into the trunk, or vice versa."
6501 #: ../source/TortoiseGit_en.xml:8102
6502 msgid "It is important to understand how branching and merging works in Git before you start using it, as it can become quite complex. It is highly recommended that you read the chapter <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.branchmerge.html\"><citetitle>Branching and Merging</citetitle></ulink> in the Git book, which gives a full description and many examples of how it is used."
6506 #: ../source/TortoiseGit_en.xml:8112
6507 msgid "The next point to note is that merging <emphasis>always</emphasis> takes place within a working copy. If you want to merge changes <emphasis>into</emphasis> a branch, you have to have a working copy for that branch checked out, and invoke the merge wizard from that working copy using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Merge...</guimenuitem></menuchoice>."
6511 #: ../source/TortoiseGit_en.xml:8123
6512 msgid "In general it is a good idea to perform a merge into an unmodified working copy. If you have made other changes in your WC, commit those first. If the merge does not go as you expect, you may want to revert the changes, and the <guilabel>Revert</guilabel> command will discard <emphasis>all</emphasis> changes including any you made before the merge."
6516 #: ../source/TortoiseGit_en.xml:8130
6517 msgid "There are three common use cases for merging which are handled in slightly different ways, as described below. The first page of the merge wizard asks you to select the method you need."
6521 #: ../source/TortoiseGit_en.xml:8138
6522 msgid "Merge a range of revisions"
6526 #: ../source/TortoiseGit_en.xml:8140
6527 msgid "This method covers the case when you have made one or more revisions to a branch (or to the trunk) and you want to port those changes across to a different branch."
6531 #: ../source/TortoiseGit_en.xml:8145
6532 msgid "What you are asking Git to do is this: <quote>Calculate the changes necessary to get [FROM] revision 1 of branch A [TO] revision 7 of branch A, and apply those changes to my working copy (of trunk or branch B).</quote>"
6537 #: ../source/TortoiseGit_en.xml:8154
6538 #: ../source/TortoiseGit_en.xml:8284
6539 msgid "Reintegrate a branch"
6543 #: ../source/TortoiseGit_en.xml:8156
6544 msgid "This method covers the case when you have made a feature branch as discussed in the Git book. All trunk changes have been ported to the feature branch, week by week, and now the feature is complete you want to merge it back into the trunk. Because you have kept the feature branch synchronized with the trunk, the latest versions of branch and trunk will be absolutely identical except for your branch changes."
6548 #: ../source/TortoiseGit_en.xml:8165
6549 msgid "This is a special case of the tree merge described below, and it requires only the URL to merge from (normally) your development branch. It uses the merge-tracking features of Git to calculate the correct revision ranges to use, and perform additional checks which ensure that the branch has been fully updated with trunk changes. This ensures that you don't accidentally undo work that others have committed to trunk since you last synchronized changes."
6553 #: ../source/TortoiseGit_en.xml:8175
6554 msgid "After the merge, all branch development has been completely merged back into the main development line. The branch is now redundant and can be deleted."
6558 #: ../source/TortoiseGit_en.xml:8183
6559 msgid "Merge two different trees"
6563 #: ../source/TortoiseGit_en.xml:8185
6564 msgid "This is a more general case of the reintegrate method. What you are asking Git to do is: <quote>Calculate the changes necessary to get [FROM] the head revision of the trunk [TO] the head revision of the branch, and apply those changes to my working copy (of the trunk).</quote> The net result is that trunk now looks exactly like the branch."
6568 #: ../source/TortoiseGit_en.xml:8193
6569 msgid "If your server/repository does not support merge-tracking then this is the only way to merge a branch back to trunk. Another use case occurs when you are using vendor branches and you need to merge the changes following a new vendor drop into your trunk code. For more information read the chapter on <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.advanced.vendorbr.html\"><citetitle>vendor branches</citetitle></ulink> in the Git Book."
6573 #: ../source/TortoiseGit_en.xml:8208
6574 msgid "Merging a Range of Revisions"
6578 #: ../source/TortoiseGit_en.xml:8212
6579 msgid "revision range"
6583 #: ../source/TortoiseGit_en.xml:8216
6584 msgid "The Merge Wizard - Select Revision Range"
6588 #: ../source/TortoiseGit_en.xml:8214
6589 msgid "<placeholder-1/> In the <guilabel>From:</guilabel> field enter the full folder URL of the branch or tag containing the changes you want to port into your working copy. You may also click <guibutton>...</guibutton> to browse the repository and find the desired branch. If you have merged from this branch before, then just use the drop down list which shows a history of previously used URLs."
6593 #: ../source/TortoiseGit_en.xml:8229
6594 msgid "In the <guilabel>Revision range to merge</guilabel> field enter the list of revisions you want to merge. This can be a single revision, a list of specific revisions separated by commas, or a range of revisions separated by a dash, or any combination of these."
6598 #: ../source/TortoiseGit_en.xml:8236
6599 msgid "The easiest way to select the range of revisions you need is to click on <guibutton>Show Log</guibutton>, as this will list recent changes with their log comments. If you want to merge the changes from a single revision, just select that revision. If you want to merge changes from several revisions, then select that range (using the usual <keycap>Shift</keycap>-modifier). Click on <guibutton>OK</guibutton> and the list of revision numbers to merge will be filled in for you."
6603 #: ../source/TortoiseGit_en.xml:8247
6604 msgid "If you want to merge changes back <emphasis>out</emphasis> of your working copy, to revert a change which has already been committed, select the revisions to revert and make sure the <guilabel>Reverse merge</guilabel> box is checked."
6608 #: ../source/TortoiseGit_en.xml:8253
6609 msgid "If you have already merged some changes from this branch, hopefully you will have made a note of the last revision merged in the log message when you committed the change. In that case, you can use <guibutton>Show Log</guibutton> for the Working Copy to trace that log message. Use the end point of the last merge as the start point for this merge. For example, if you have merged revisions 37 to 39 last time, then the start point for this merge should be revision 39."
6613 #: ../source/TortoiseGit_en.xml:8264
6614 msgid "If you are using the merge tracking features of Git, you do not need to remember which revisions have already been merged - Git will record that for you. If you leave the revision range blank, all revisions which have not yet been merged will be included. Read <xref linkend=\"tsvn-dug-merge-tracking\"/> to find out more."
6618 #: ../source/TortoiseGit_en.xml:8272
6619 msgid "If other people may be committing changes then be careful about using the HEAD revision. It may not refer to the revision you think it does if someone else made a commit after your last update."
6623 #: ../source/TortoiseGit_en.xml:8278
6624 msgid "Click <guibutton>Next</guibutton> and go to <xref linkend=\"tsvn-dug-merge-options\"/>"
6628 #: ../source/TortoiseGit_en.xml:8288
6633 #: ../source/TortoiseGit_en.xml:8292
6634 msgid "The Merge Wizard - Reintegrate Merge"
6638 #: ../source/TortoiseGit_en.xml:8290
6639 msgid "<placeholder-1/> To merge a feature branch back into the trunk you must start the merge wizard from within a working copy of the trunk."
6643 #: ../source/TortoiseGit_en.xml:8298
6644 msgid "In the <guilabel>From URL:</guilabel> field enter the full folder URL of the branch that you want to merge back. You may also click <guibutton>...</guibutton> to browse the repository."
6648 #: ../source/TortoiseGit_en.xml:8305
6649 msgid "There are some conditions which apply to a reintegrate merge. Firstly, the server must support merge tracking. The working copy must be of depth infinite (no sparse checkouts), and it must not have any local modifications, switched items or items that have been updated to revisions other than HEAD. All changes to trunk made during branch development must have been merged across to the branch (or marked as having been merged). The range of revisions to merge will be calculated automatically."
6653 #: ../source/TortoiseGit_en.xml:8317
6654 msgid "Merging Two Different Trees"
6658 #: ../source/TortoiseGit_en.xml:8321
6663 #: ../source/TortoiseGit_en.xml:8325
6664 msgid "The Merge Wizard - Tree Merge"
6668 #: ../source/TortoiseGit_en.xml:8323
6669 msgid "<placeholder-1/> If you are using this method to merge a feature branch back to trunk, you need to start the merge wizard from within a working copy of trunk."
6673 #: ../source/TortoiseGit_en.xml:8331
6674 msgid "In the <guilabel>From:</guilabel> field enter the full folder URL of the <emphasis>trunk</emphasis>. This may sound wrong, but remember that the trunk is the start point to which you want to add the branch changes. You may also click <guibutton>...</guibutton> to browse the repository."
6678 #: ../source/TortoiseGit_en.xml:8340
6679 msgid "In the <guilabel>To:</guilabel> field enter the full folder URL of the feature branch."
6683 #: ../source/TortoiseGit_en.xml:8344
6684 msgid "In both the <guilabel>From Revision</guilabel> field and the <guilabel>To Revision</guilabel> field, enter the last revision number at which the two trees were synchronized. If you are sure no-one else is making commits you can use the HEAD revision in both cases. If there is a chance that someone else may have made a commit since that synchronization, use the specific revision number to avoid losing more recent commits."
6688 #: ../source/TortoiseGit_en.xml:8354
6689 msgid "You can also use <guibutton>Show Log</guibutton> to select the revision."
6693 #: ../source/TortoiseGit_en.xml:8360
6694 msgid "Merge Options"
6698 #: ../source/TortoiseGit_en.xml:8362
6699 msgid "This page of the wizard lets you specify advanced options, before starting the merge process. Most of the time you can just use the default settings."
6703 #: ../source/TortoiseGit_en.xml:8367
6704 msgid "You can specify the depth to use for the merge, i.e. how far down into your working copy the merge should go. The depth terms used are described in <xref linkend=\"tsvn-dug-checkout-depth\"/>. The default depth is <guilabel>Working copy</guilabel>, which uses the existing depth setting, and is almost always what you want."
6708 #: ../source/TortoiseGit_en.xml:8374
6709 msgid "Most of the time you want merge to take account of the file's history, so that changes relative to a common ancestor are merged. Sometimes you may need to merge files which are perhaps related, but not in your repository. For example you may have imported versions 1 and 2 of a third party library into two separate directories. Although they are logically related, Git has no knowledge of this because it only sees the tarballs you imported. If you attempt to merge the difference between these two trees you would see a complete removal followed by a complete add. To make Git use only path-based differences rather than history-based differences, check the <guilabel>Ignore ancestry</guilabel> box. Read more about this topic in the Git book, <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.branchmerge.copychanges.html#svn.branchmerge.copychanges.bestprac.ancestry\"><citetitle>Noticing or Ignoring Ancestry</citetitle></ulink>"
6713 #: ../source/TortoiseGit_en.xml:8391
6714 msgid "You can specify the way that line ending and whitespace changes are handled. These options are described in <xref linkend=\"tsvn-dug-diff-eol-whitespace\"/>. The default behaviour is to treat all whitespace and line-end differences as real changes to be merged."
6718 #: ../source/TortoiseGit_en.xml:8397
6719 msgid "If you are using merge tracking and you want to mark a revision as having been merged, without actually doing the merge here, check the <guilabel>Only record the merge</guilabel> checkbox. There are two possible reasons you might want to do this. It may be that the merge is too complicated for the merge algorithms, so you code the changes by hand, then mark the change as merged so that the merge tracking algorithm is aware of it. Or you might want to prevent a particular revision from being merged. Marking it as already merged will prevent the merge occurring with merge-tracking-aware clients."
6723 #: ../source/TortoiseGit_en.xml:8408
6724 msgid "Now everything is set up, all you have to do is click on the <guibutton>Merge</guibutton> button. If you want to preview the results <guibutton>Test Merge</guibutton> performs the merge operation, but does <emphasis>not</emphasis> modify the working copy at all. It shows you a list of the files that will be changed by a real merge, and notes those areas where conflicts will occur."
6728 #: ../source/TortoiseGit_en.xml:8416
6729 msgid "The merge progress dialog shows each stage of the merge, with the revision ranges involved. This may indicate one more revision than you were expecting. For example if you asked to merge revision 123 the progress dialog will report <quote>Merging revisions 122 through 123</quote>. To understand this you need to remember that Merge is closely related to Diff. The merge process works by generating a list of differences between two points in the repository, and applying those differences to your working copy. The progress dialog is simply showing the start and end points for the diff."
6733 #: ../source/TortoiseGit_en.xml:8429
6734 msgid "Reviewing the Merge Results"
6738 #: ../source/TortoiseGit_en.xml:8430
6739 msgid "The merge is now complete. It's a good idea to have a look at the merge and see if it's as expected. Merging is usually quite complicated. Conflicts often arise if the branch has drifted far from the trunk."
6743 #: ../source/TortoiseGit_en.xml:8435
6744 msgid "For Git clients and servers prior to 1.5, no merge information is stored and merged revisions have to be tracked manually. When you have tested the changes and come to commit this revision, your commit log message should <emphasis>always</emphasis> include the revision numbers which have been ported in the merge. If you want to apply another merge at a later time you will need to know what you have already merged, as you do not want to port a change more than once. For more information about this, refer to <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.branchmerge.copychanges.html#svn.branchmerge.copychanges.bestprac\"><citetitle>Best Practices for Merging</citetitle></ulink> in the Git book."
6748 #: ../source/TortoiseGit_en.xml:8449
6749 msgid "If your server and all clients are running Git 1.5 or higher, the merge tracking facility will record the revisions merged and avoid a revision being merged more than once. This makes your life much simpler as you can simply merge the entire revision range each time and know that only new revisions will actually be merged."
6753 #: ../source/TortoiseGit_en.xml:8456
6754 msgid "Branch management is important. If you want to keep this branch up to date with the trunk, you should be sure to merge often so that the branch and trunk do not drift too far apart. Of course, you should still avoid repeated merging of changes, as explained above."
6758 #: ../source/TortoiseGit_en.xml:8463
6759 msgid "If you have just merged a feature branch back into the trunk, the trunk now contains all the new feature code, and the branch is obsolete. You can now delete it from the repository if required."
6763 #: ../source/TortoiseGit_en.xml:8471
6764 msgid "Git can't merge a file with a folder and vice versa - only folders to folders and files to files. If you click on a file and open up the merge dialog, then you have to give a path to a file in that dialog. If you select a folder and bring up the dialog, then you must specify a folder URL for the merge."
6768 #: ../source/TortoiseGit_en.xml:8481
6769 msgid "Merge Tracking"
6773 #: ../source/TortoiseGit_en.xml:8483
6774 msgid "merge tracking"
6778 #: ../source/TortoiseGit_en.xml:8491
6779 msgid "You can avoid the danger of merging the same revision twice (repeated merge problem). Once a revision is marked as having been merged, future merges which include that revision in the range will skip over it."
6783 #: ../source/TortoiseGit_en.xml:8497
6784 msgid "When you merge a branch back into trunk, the log dialog can show you the branch commits as part of the trunk log, giving better traceability of changes."
6788 #: ../source/TortoiseGit_en.xml:8502
6789 msgid "When showing blame information for a file, you can choose to show the original author of merged revisions, rather than the person who did the merge."
6793 #: ../source/TortoiseGit_en.xml:8507
6794 msgid "You can mark revisions as <emphasis>do not merge</emphasis> by including them in the list of merged revisions without actually doing the merge."
6798 #: ../source/TortoiseGit_en.xml:8485
6799 msgid "Git 1.5 introduced facilities for merge tracking. When you merge changes from one tree into another, the revision numbers merged are stored and this information can be used for several different purposes. <placeholder-1/>"
6803 #: ../source/TortoiseGit_en.xml:8515
6804 msgid "Merge tracking information is stored in the <literal>svn:mergeinfo</literal> property by the client when it performs a merge. When the merge is committed the server stores that information in a database, and when you request merge, log or blame information, the server can respond appropriately. For the system to work properly you must ensure that the server, the repository and all clients are upgraded. Earlier clients will not store the <literal>svn:mergeinfo</literal> property and earlier servers will not provide the information requested by new clients."
6808 #: ../source/TortoiseGit_en.xml:8525
6809 msgid "Find out more about merge tracking from Git's <ulink url=\"http://Git.tigris.org/merge-tracking/index.html\"><citetitle>Merge tracking documentation</citetitle></ulink>."
6813 #: ../source/TortoiseGit_en.xml:8533
6814 msgid "Handling Conflicts during Merge"
6818 #: ../source/TortoiseGit_en.xml:8536
6819 msgid "merge conflicts"
6823 #: ../source/TortoiseGit_en.xml:8545
6824 msgid "The Merge Conflict Callback Dialog"
6828 #: ../source/TortoiseGit_en.xml:8538
6829 msgid "Merging does not always go smoothly. Sometimes there is a conflict, and if you are merging multiple ranges, you generally want to resolve the conflict before merging of the next range starts. TortoiseGit helps you through this process by showing the <emphasis>merge conflict callback</emphasis> dialog. <placeholder-1/>"
6833 #: ../source/TortoiseGit_en.xml:8554
6834 msgid "You may decide that your local changes are much more important, so you want to discard the version from the repository and keep your local version. Or you might discard your local changes in favour of the repository version. Either way, no attempt is made to merge the changes - you choose one or the other."
6838 #: ../source/TortoiseGit_en.xml:8564
6839 msgid "Normally you will want to look at the conflicts and resolve them. In that case, choose the <guibutton>Edit Conflict</guibutton> which will start up your merge tool. When you are satisfied with the result, click <guibutton>Resolved</guibutton>."
6843 #: ../source/TortoiseGit_en.xml:8572
6844 msgid "The last option is to postpone resolution and continue with merging. You can choose to do that for the current conflicted file, or for all files in the rest of the merge. However, if there are further changes in that file, it will not be possible to complete the merge."
6848 #: ../source/TortoiseGit_en.xml:8549
6849 msgid "When a conflict occurs during the merge, you have three ways to handle it. <placeholder-1/>"
6853 #: ../source/TortoiseGit_en.xml:8584
6854 msgid "Merge All Changes"
6858 #: ../source/TortoiseGit_en.xml:8587
6863 #: ../source/TortoiseGit_en.xml:8599
6864 msgid "The Merge all Dialog"
6868 #: ../source/TortoiseGit_en.xml:8589
6869 msgid "If you want to merge all changes from trunk to the branch you are currently working on, then you can use the <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Merge all...</guimenuitem></menuchoice> from the extended context menu (hold down the <keycap>Shift</keycap> key while you right click on the file). <placeholder-1/> This dialog is very easy. All you have to do is set the options for the merge, as described in <xref linkend=\"tsvn-dug-merge-options\"/>. The rest is done by TortoiseGit automatically using merge tracking."
6873 #: ../source/TortoiseGit_en.xml:8606
6874 msgid "If you use this feature you must be sure that all clients are using merge tracking, otherwise the merge history may be incomplete. Also, if the server does not have a merge tracking database, gathering the information will be very slow."
6878 #: ../source/TortoiseGit_en.xml:8615
6883 #: ../source/TortoiseGit_en.xml:8617
6888 #: ../source/TortoiseGit_en.xml:8620
6893 #: ../source/TortoiseGit_en.xml:8630
6894 msgid "You are using <quote>unmergeable</quote> files, for example, graphics files. If two people change the same file, merging is not possible, so one of you will lose their changes."
6898 #: ../source/TortoiseGit_en.xml:8638
6899 msgid "Your company has always used a locking revision control system in the past and there has been a management decision that <quote>locking is best</quote>."
6903 #: ../source/TortoiseGit_en.xml:8622
6904 msgid "Git generally works best without locking, using the <quote>Copy-Modify-Merge</quote> methods described earlier in <xref linkend=\"tsvn-basics-versioning-copymodifymerge\"/>. However there are a few instances when you may need to implement some form of locking policy. <placeholder-1/>"
6908 #: ../source/TortoiseGit_en.xml:8646
6909 msgid "Firstly you need to ensure that your Git server is upgraded to at least version 1.2. Earlier versions do not support locking at all. If you are using <literal>file://</literal> access, then of course only your client needs to be updated."
6913 #: ../source/TortoiseGit_en.xml:8653
6914 msgid "How Locking Works in Git"
6918 #: ../source/TortoiseGit_en.xml:8654
6919 msgid "By default, nothing is locked and anyone who has commit access can commit changes to any file at any time. Others will update their working copies periodically and changes in the repository will be merged with local changes."
6923 #: ../source/TortoiseGit_en.xml:8660
6924 msgid "If you <firstterm>Get a Lock</firstterm> on a file, then only you can commit that file. Commits by all other users will be blocked until you release the lock. A locked file cannot be modified in any way in the repository, so it cannot be deleted or renamed either, except by the lock owner."
6928 #: ../source/TortoiseGit_en.xml:8667
6929 msgid "However, other users will not necessarily know that you have taken out a lock. Unless they check the lock status regularly, the first they will know about it is when their commit fails, which in most cases is not very useful. To make it easier to manage locks, there is a new Git property <literal>svn:needs-lock</literal>. When this property is set (to any value) on a file, whenever the file is checked out or updated, the local copy is made read-only <emphasis>unless</emphasis> that working copy holds a lock for the file. This acts as a warning that you should not edit that file unless you have first acquired a lock. Files which are versioned and read-only are marked with a special overlay in TortoiseGit to indicate that you need to acquire a lock before editing."
6933 #: ../source/TortoiseGit_en.xml:8683
6934 msgid "Locks are recorded by working copy location as well as by owner. If you have several working copies (at home, at work) then you can only hold a lock in <emphasis>one</emphasis> of those working copies."
6938 #: ../source/TortoiseGit_en.xml:8689
6939 msgid "If one of your co-workers acquires a lock and then goes on holiday without releasing it, what do you do? Git provides a means to force locks. Releasing a lock held by someone else is referred to as <firstterm>Breaking</firstterm> the lock, and forcibly acquiring a lock which someone else already holds is referred to as <firstterm>Stealing</firstterm> the lock. Naturally these are not things you should do lightly if you want to remain friends with your co-workers."
6943 #: ../source/TortoiseGit_en.xml:8699
6944 msgid "Locks are recorded in the repository, and a lock token is created in your local working copy. If there is a discrepancy, for example if someone else has broken the lock, the local lock token becomes invalid. The repository is always the definitive reference."
6948 #: ../source/TortoiseGit_en.xml:8708
6949 msgid "Getting a Lock"
6953 #: ../source/TortoiseGit_en.xml:8717
6954 msgid "The Locking Dialog"
6958 #: ../source/TortoiseGit_en.xml:8709
6959 msgid "Select the file(s) in your working copy for which you want to acquire a lock, then select the command <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Get Lock...</guimenuitem></menuchoice>. <placeholder-1/> A dialog appears, allowing you to enter a comment, so others can see why you have locked the file. The comment is optional and currently only used with Svnserve based repositories. If (and <emphasis>only</emphasis> if) you need to steal the lock from someone else, check the <guilabel>Steal lock</guilabel> box, then click on <guibutton>OK</guibutton>."
6963 #: ../source/TortoiseGit_en.xml:8729
6964 msgid "If you select a folder and then use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Get Lock...</guimenuitem></menuchoice> the lock dialog will open with <emphasis>every</emphasis> file in <emphasis>every</emphasis> sub-folder selected for locking. If you really want to lock an entire hierarchy, that is the way to do it, but you could become very unpopular with your co-workers if you lock them out of the whole project. Use with care ..."
6968 #: ../source/TortoiseGit_en.xml:8743
6969 msgid "Releasing a Lock"
6973 #: ../source/TortoiseGit_en.xml:8744
6974 msgid "To make sure you don't forget to release a lock you don't need any more, locked files are shown in the commit dialog and selected by default. If you continue with the commit, locks you hold on the selected files are removed, even if the files haven't been modified. If you don't want to release a lock on certain files, you can uncheck them (if they're not modified). If you want to keep a lock on a file you've modified, you have to enable the <guilabel>Keep locks</guilabel> checkbox before you commit your changes."
6978 #: ../source/TortoiseGit_en.xml:8755
6979 msgid "To release a lock manually, select the file(s) in your working copy for which you want to release the lock, then select the command <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Release Lock</guimenuitem></menuchoice> There is nothing further to enter so TortoiseGit will contact the repository and release the locks. You can also use this command on a folder to release all locks recursively."
6983 #: ../source/TortoiseGit_en.xml:8768
6984 msgid "Checking Lock Status"
6988 #: ../source/TortoiseGit_en.xml:8771
6989 msgid "The Check for Modifications Dialog"
6993 #: ../source/TortoiseGit_en.xml:8769
6994 msgid "<placeholder-1/> To see what locks you and others hold, you can use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Check for Modifications...</guimenuitem></menuchoice>. Locally held lock tokens show up immediately. To check for locks held by others (and to see if any of your locks are broken or stolen) you need to click on <guibutton>Check Repository</guibutton>."
6998 #: ../source/TortoiseGit_en.xml:8784
6999 msgid "From the context menu here, you can also get and release locks, as well as breaking and stealing locks held by others."
7003 #: ../source/TortoiseGit_en.xml:8789
7004 msgid "Avoid Breaking and Stealing Locks"
7008 #: ../source/TortoiseGit_en.xml:8790
7009 msgid "If you break or steal someone else's lock without telling them, you could potentially cause loss of work. If you are working with unmergeable file types and you steal someone else's lock, once you release the lock they are free to check in their changes and overwrite yours. Git doesn't lose data, but you have lost the team-working protection that locking gave you."
7013 #: ../source/TortoiseGit_en.xml:8802
7014 msgid "Making Non-locked Files Read-Only"
7018 #: ../source/TortoiseGit_en.xml:8803
7019 msgid "As mentioned above, the most effective way to use locking is to set the <literal>svn:needs-lock</literal> property on files. Refer to <xref linkend=\"tsvn-dug-propertypage\"/> for instructions on how to set properties. Files with this property set will always be checked out and updated with the read-only flag set unless your working copy holds a lock. <graphic fileref=\"../images/ReadOnlyIcon.png\"/> As a reminder, TortoiseGit uses a special overlay to indicate this."
7023 #: ../source/TortoiseGit_en.xml:8813
7024 msgid "If you operate a policy where every file has to be locked then you may find it easier to use Git's auto-props feature to set the property automatically every time you add new files. Read <xref linkend=\"tsvn-dug-settings\"/> for further information."
7028 #: ../source/TortoiseGit_en.xml:8821
7029 msgid "The Locking Hook Scripts"
7033 #: ../source/TortoiseGit_en.xml:8822
7034 msgid "When you create a new repository with Git 1.2 or higher, four hook templates are created in the repository <filename>hooks</filename> directory. These are called before and after getting a lock, and before and after releasing a lock."
7038 #: ../source/TortoiseGit_en.xml:8828
7039 msgid "It is a good idea to install a <literal>post-lock</literal> and <literal>post-unlock</literal> hook script on the server which sends out an email indicating the file which has been locked. With such a script in place, all your users can be notified if someone locks/unlocks a file. You can find an example hook script <filename>hooks/post-lock.tmpl</filename> in your repository folder."
7043 #: ../source/TortoiseGit_en.xml:8836
7044 msgid "You might also use hooks to disallow breaking or stealing of locks, or perhaps limit it to a named administrator. Or maybe you want to email the owner when one of their locks is broken or stolen."
7048 #: ../source/TortoiseGit_en.xml:8842
7049 msgid "Read <xref linkend=\"tsvn-repository-hooks\"/> to find out more."
7053 #: ../source/TortoiseGit_en.xml:8848
7054 msgid "Creating and Applying Patches"
7058 #: ../source/TortoiseGit_en.xml:8850
7063 #: ../source/TortoiseGit_en.xml:8856
7064 msgid "unified diff"
7068 #: ../source/TortoiseGit_en.xml:8860
7069 msgid "For open source projects (like this one) everyone has read access to the repository, and anyone can make a contribution to the project. So how are those contributions controlled? If just anyone could commit changes, the project would be permanently unstable and probably permanently broken. In this situation the change is managed by submitting a <firstterm>patch</firstterm> file to the development team, who do have write access. They can review the patch first, and then either submit it to the repository or reject it back to the author."
7073 #: ../source/TortoiseGit_en.xml:8871
7074 msgid "Patch files are simply Unified-Diff files showing the differences between your working copy and the base revision."
7078 #: ../source/TortoiseGit_en.xml:8876
7079 msgid "Creating a Patch File"
7083 #: ../source/TortoiseGit_en.xml:8877
7084 msgid "First you need to make <emphasis>and test</emphasis> your changes. Then instead of using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Commit...</guimenuitem></menuchoice> on the parent folder, you select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Create Patch...</guimenuitem></menuchoice>"
7088 #: ../source/TortoiseGit_en.xml:8891
7089 msgid "The Create Patch dialog"
7093 #: ../source/TortoiseGit_en.xml:8894
7094 msgid "you can now select the files you want included in the patch, just as you would with a full commit. This will produce a single file containing a summary of all the changes you have made to the selected files since the last update from the repository."
7098 #: ../source/TortoiseGit_en.xml:8905
7099 msgid "You can produce separate patches containing changes to different sets of files. Of course, if you create a patch file, make some more changes to the <emphasis>same</emphasis> files and then create another patch, the second patch file will include <emphasis>both</emphasis> sets of changes."
7103 #: ../source/TortoiseGit_en.xml:8911
7104 msgid "Just save the file using a filename of your choice. Patch files can have any extension you like, but by convention they should use the <filename>.patch</filename> or <filename>.diff</filename> extension. You are now ready to submit your patch file."
7108 #: ../source/TortoiseGit_en.xml:8918
7109 msgid "You can also save the patch to the clipboard instead of to a file. You might want to do this so that you can paste it into an email for review by others. Or if you have two working copies on one machine and you want to transfer changes from one to the other, a patch on the clipboard is a convenient way of doing this."
7113 #: ../source/TortoiseGit_en.xml:8927
7114 msgid "Applying a Patch File"
7118 #: ../source/TortoiseGit_en.xml:8928
7119 msgid "Patch files are applied to your working copy. This should be done from the same folder level as was used to create the patch. If you are not sure what this is, just look at the first line of the patch file. For example, if the first file being worked on was <filename>doc/source/english/chapter1.xml</filename> and the first line in the patch file is <filename>Index: english/chapter1.xml</filename> then you need to apply the patch to the <filename>doc/source/</filename> folder. However, provided you are in the correct working copy, if you pick the wrong folder level, TortoiseGit will notice and suggest the correct level."
7123 #: ../source/TortoiseGit_en.xml:8942
7124 msgid "In order to apply a patch file to your working copy, you need to have at least read access to the repository. The reason for this is that the merge program must reference the changes back to the revision against which they were made by the remote developer."
7128 #: ../source/TortoiseGit_en.xml:8949
7129 msgid "From the context menu for that folder, click on <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Apply Patch...</guimenuitem></menuchoice> This will bring up a file open dialog allowing you to select the patch file to apply. By default only <filename>.patch</filename> or <filename>.diff</filename> files are shown, but you can opt for <quote>All files</quote>. If you previously saved a patch to the clipboard, you can use <guibutton>Open from clipboard...</guibutton> in the file open dialog."
7133 #: ../source/TortoiseGit_en.xml:8963
7134 msgid "Alternatively, if the patch file has a <filename>.patch</filename> or <filename>.diff</filename> extension, you can right click on it directly and select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Apply Patch...</guimenuitem></menuchoice>. In this case you will be prompted to enter a working copy location."
7138 #: ../source/TortoiseGit_en.xml:8973
7139 msgid "These two methods just offer different ways of doing the same thing. With the first method you select the WC and browse to the patch file. With the second you select the patch file and browse to the WC."
7143 #: ../source/TortoiseGit_en.xml:8978
7144 msgid "Once you have selected the patch file and working copy location, TortoiseMerge runs to merge the changes from the patch file with your working copy. A small window lists the files which have been changed. Double click on each one in turn, review the changes and save the merged files."
7148 #: ../source/TortoiseGit_en.xml:8985
7149 msgid "The remote developer's patch has now been applied to your working copy, so you need to commit to allow everyone else to access the changes from the repository."
7153 #: ../source/TortoiseGit_en.xml:8993
7154 msgid "Who Changed Which Line?"
7158 #: ../source/TortoiseGit_en.xml:8995
7163 #: ../source/TortoiseGit_en.xml:8998
7168 #: ../source/TortoiseGit_en.xml:9001
7173 #: ../source/TortoiseGit_en.xml:9004
7174 msgid "Sometimes you need to know not only what lines have changed, but also who exactly changed specific lines in a file. That's when the <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Blame...</guimenuitem></menuchoice> command, sometimes also referred to as <firstterm>annotate</firstterm> command comes in handy."
7178 #: ../source/TortoiseGit_en.xml:9014
7179 msgid "This command lists, for every line in a file, the author and the revision the line was changed."
7183 #: ../source/TortoiseGit_en.xml:9019
7184 msgid "Blame for Files"
7188 #: ../source/TortoiseGit_en.xml:9022
7189 msgid "The Annotate / Blame Dialog"
7193 #: ../source/TortoiseGit_en.xml:9020
7194 msgid "<placeholder-1/> If you're not interested in changes from earlier revisions you can set the revision from which the blame should start. Set this to <literal>1</literal>, if you want the blame for <emphasis>every</emphasis> revision."
7198 #: ../source/TortoiseGit_en.xml:9029
7199 msgid "By default the blame file is viewed using <firstterm>TortoiseBlame</firstterm>, which highlights the different revisions to make it easier to read. If you wish to print or edit the blame file, select <guilabel>Use Text viewer to view blames</guilabel>"
7203 #: ../source/TortoiseGit_en.xml:9035
7204 msgid "You can specify the way that line ending and whitespace changes are handled. These options are described in <xref linkend=\"tsvn-dug-diff-eol-whitespace\"/>. The default behaviour is to treat all whitespace and line-end differences as real changes, but if you want to ignore an indentation change and find the original author, you can choose an appropriate option here."
7208 #: ../source/TortoiseGit_en.xml:9042
7209 msgid "Once you press <guibutton>OK</guibutton> TortoiseGit starts retrieving the data to create the blame file. Please note: This can take several minutes to finish, depending on how much the file has changed and of course your network connection to the repository. Once the blame process has finished the result is written into a temporary file and you can view the results."
7213 #: ../source/TortoiseGit_en.xml:9052
7214 msgid "TortoiseBlame"
7218 #: ../source/TortoiseGit_en.xml:9050
7219 msgid "<placeholder-1/> TortoiseBlame, which is included with TortoiseGit, makes the blame file easier to read. When you hover the mouse over a line in the blame info column, all lines with the same revision are shown with a darker background. Lines from other revisions which were changed by the same author are shown with a light background. The colouring may not work as clearly if you have your display set to 256 colour mode."
7223 #: ../source/TortoiseGit_en.xml:9063
7224 msgid "If you <action>left click</action> on a line, all lines with the same revision are highlighted, and lines from other revisions by the same author are highlighted in a lighter colour. This highlighting is sticky, allowing you to move the mouse without losing the highlights. Click on that revision again to turn off highlighting."
7228 #: ../source/TortoiseGit_en.xml:9070
7229 msgid "The revision comments (log message) are shown in a hint box whenever the mouse hovers over the blame info column. If you want to copy the log message for that revision, use the context menu which appears when you right click on the blame info column."
7233 #: ../source/TortoiseGit_en.xml:9076
7234 msgid "You can search within the Blame report using <menuchoice><guimenu>Edit</guimenu><guimenuitem>Find...</guimenuitem></menuchoice>. This allows you to search for revision numbers, authors and the content of the file itself. Log messages are not included in the search - you should use the Log Dialog to search those."
7238 #: ../source/TortoiseGit_en.xml:9086
7239 msgid "You can also jump to a specific line number using <menuchoice><guimenu>Edit</guimenu><guimenuitem>Go To Line...</guimenuitem></menuchoice>."
7243 #: ../source/TortoiseGit_en.xml:9093
7244 msgid "When the mouse is over the blame info columns, a context menu is available which helps with comparing revisions and examining history, using the revision number of the line under the mouse as a reference. <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Blame previous revision</guimenuitem></menuchoice> generates a blame report for the same file, but using the previous revision as the upper limit. This gives you the blame report for the state of the file just before the line you are looking at was last changed. <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Show changes</guimenuitem></menuchoice> starts your diff viewer, showing you what changed in the referenced revision. <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Show log</guimenuitem></menuchoice> displays the revision log dialog starting with the referenced revision."
7248 #: ../source/TortoiseGit_en.xml:9115
7249 msgid "If you need a better visual indicator of where the oldest and newest changes are, select <menuchoice><guimenu>View</guimenu><guimenuitem>Color age of lines</guimenuitem></menuchoice>. This will use a colour gradient to show newer lines in red and older lines in blue. The default colouring is quite light, but you can change it using the TortoiseBlame settings."
7253 #: ../source/TortoiseGit_en.xml:9126
7254 msgid "If you are using Merge Tracking, where lines have changed as a result of merging from another path, TortoiseBlame will show the revision and author of the last change in the original file rather than the revision where the merge took place. These lines are indicated by showing the revision and author in italics."
7258 #: ../source/TortoiseGit_en.xml:9133
7259 msgid "If you want to see the paths involved in the merge, select <menuchoice><guimenu>View</guimenu><guimenuitem>Merge paths</guimenuitem></menuchoice>."
7263 #: ../source/TortoiseGit_en.xml:9140
7264 msgid "The settings for TortoiseBlame can be accessed using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Settings...</guimenuitem></menuchoice> on the TortoiseBlame tab. Refer to <xref linkend=\"tsvn-dug-settings-tortoiseblame\"/>."
7268 #: ../source/TortoiseGit_en.xml:9151
7269 msgid "Blame Differences"
7273 #: ../source/TortoiseGit_en.xml:9152
7274 msgid "One of the limitations of the Blame report is that it only shows the file as it was in a particular revision, and shows the last person to change each line. Sometimes you want to know what change was made, as well as who made it. What you need here is a combination of the diff and blame reports."
7278 #: ../source/TortoiseGit_en.xml:9162
7279 msgid "Blame Revisions"
7283 #: ../source/TortoiseGit_en.xml:9164
7284 msgid "In the top pane, select 2 revisions, then select <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Blame revisions</guimenuitem></menuchoice>. This will fetch the blame data for the 2 revisions, then use the diff viewer to compare the two blame files."
7288 #: ../source/TortoiseGit_en.xml:9176
7289 msgid "Blame Changes"
7293 #: ../source/TortoiseGit_en.xml:9178
7294 msgid "Select one revision in the top pane, then pick one file in the bottom pane and select <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Blame changes</guimenuitem></menuchoice>. This will fetch the blame data for the selected revision and the previous revision, then use the diff viewer to compare the two blame files."
7298 #: ../source/TortoiseGit_en.xml:9192
7299 msgid "Compare and Blame with Working BASE"
7303 #: ../source/TortoiseGit_en.xml:9194
7304 msgid "Show the log for a single file, and in the top pane, select a single revision, then select <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Compare and Blame with Working BASE</guimenuitem></menuchoice>. This will fetch the blame data for the selected revision, and for the file in the working BASE, then use the diff viewer to compare the two blame files."
7308 #: ../source/TortoiseGit_en.xml:9158
7309 msgid "The revision log dialog includes several options which allow you to do this. <placeholder-1/>"
7314 #: ../source/TortoiseGit_en.xml:9212
7315 #: ../source/TortoiseGit_en.xml:9236
7316 msgid "The Repository Browser"
7320 #: ../source/TortoiseGit_en.xml:9214
7321 msgid "repo-browser"
7325 #: ../source/TortoiseGit_en.xml:9217
7326 msgid "server-side actions"
7330 #: ../source/TortoiseGit_en.xml:9226
7331 msgid "server viewer"
7335 #: ../source/TortoiseGit_en.xml:9229
7336 msgid "Sometimes you need to work directly on the repository, without having a working copy. That's what the <firstterm>Repository Browser</firstterm> is for. Just as the explorer and the icon overlays allow you to view your working copy, so the Repository Browser allows you to view the structure and status of the repository. <placeholder-1/> With the Repository Browser you can execute commands like copy, move, rename, ... directly on the repository."
7340 #: ../source/TortoiseGit_en.xml:9242
7341 msgid "The repository browser looks very similar to the Windows explorer, except that it is showing the content of the repository at a particular revision rather than files on your computer. In the left pane you can see a directory tree, and in the right pane are the contents of the selected directory. At the top of the Repository Browser Window you can enter the URL of the repository and the revision you want to browse."
7345 #: ../source/TortoiseGit_en.xml:9251
7346 msgid "Just like Windows explorer, you can click on the column headings in the right pane if you want to set the sort order. And as in explorer there are context menus available in both panes."
7350 #: ../source/TortoiseGit_en.xml:9266
7351 msgid "Save an unversioned copy of the file to your hard drive."
7355 #: ../source/TortoiseGit_en.xml:9271
7356 msgid "Show the revision log for that file, or show a graph of all revisions so you can see where the file came from."
7360 #: ../source/TortoiseGit_en.xml:9277
7361 msgid "Blame the file, to see who changed which line and when."
7365 #: ../source/TortoiseGit_en.xml:9282
7366 msgid "Delete or rename the file."
7370 #: ../source/TortoiseGit_en.xml:9287
7371 msgid "Make a copy of the file, either to a different part of the repository, or to a working copy rooted in the same repository."
7375 #: ../source/TortoiseGit_en.xml:9293
7376 msgid "View/Edit the file's properties."
7380 #: ../source/TortoiseGit_en.xml:9256
7381 msgid "The context menu for a file allows you to: <placeholder-1/>"
7385 #: ../source/TortoiseGit_en.xml:9303
7386 msgid "Show the revision log for that folder, or show a graph of all revisions so you can see where the folder came from."
7390 #: ../source/TortoiseGit_en.xml:9309
7391 msgid "Export the folder to a local unversioned copy on your hard drive."
7395 #: ../source/TortoiseGit_en.xml:9314
7396 msgid "Checkout the folder to produce a local working copy on your hard drive."
7400 #: ../source/TortoiseGit_en.xml:9319
7401 msgid "Create a new folder in the repository."
7405 #: ../source/TortoiseGit_en.xml:9324
7406 msgid "Add files or folders directly to the repository."
7410 #: ../source/TortoiseGit_en.xml:9329
7411 msgid "Delete or rename the folder."
7415 #: ../source/TortoiseGit_en.xml:9334
7416 msgid "Make a copy of the folder, either to a different part of the repository, or to a working copy rooted in the same repository."
7420 #: ../source/TortoiseGit_en.xml:9340
7421 msgid "View/Edit the folder's properties."
7425 #: ../source/TortoiseGit_en.xml:9345
7426 msgid "Mark the folder for comparison. A marked folder is shown in bold."
7430 #: ../source/TortoiseGit_en.xml:9350
7431 msgid "Compare the folder with a previously marked folder, either as a unified diff, or as a list of changed files which can then be visually diffed using the default diff tool. This can be particularly useful for comparing two tags, or trunk and branch to see what changed."
7435 #: ../source/TortoiseGit_en.xml:9299
7436 msgid "The context menu for a folder allows you to: <placeholder-1/>"
7440 #: ../source/TortoiseGit_en.xml:9359
7441 msgid "If you select two folders in the right pane, you can view the differences either as a unified-diff, or as a list of files which can be visually diffed using the default diff tool."
7445 #: ../source/TortoiseGit_en.xml:9364
7446 msgid "If you select multiple folders in the right pane, you can checkout all of them at once into a common parent folder."
7450 #: ../source/TortoiseGit_en.xml:9368
7451 msgid "If you select 2 tags which are copied from the same root (typically <literal>/trunk/</literal>), you can use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Show Log...</guimenuitem></menuchoice> to view the list of revisions between the two tag points."
7455 #: ../source/TortoiseGit_en.xml:9377
7456 msgid "You can use <keycap>F5</keycap> to refresh the view as usual. This will refresh everything which is currently displayed. If you want to pre-fetch or refresh the information for nodes which have not been opened yet, use <keycap>Ctrl-F5</keycap>. After that, expanding any node will happen instantly without a network delay while the information is fetched."
7460 #: ../source/TortoiseGit_en.xml:9384
7461 msgid "You can also use the repository browser for drag-and-drop operations. If you drag a folder from explorer into the repo-browser, it will be imported into the repository. Note that if you drag multiple items, they will be imported in separate commits."
7465 #: ../source/TortoiseGit_en.xml:9390
7466 msgid "If you want to move an item within the repository, just <action>left drag</action> it to the new location. If you want to create a copy rather than moving the item, <keycap>Ctrl</keycap>-<action>left drag</action> instead. When copying, the cursor has a <quote>plus</quote> symbol on it, just as it does in Explorer."
7470 #: ../source/TortoiseGit_en.xml:9396
7471 msgid "If you want to copy/move a file or folder to another location and also give it a new name at the same time, you can <action>right drag</action> or <keycap>Ctrl</keycap>-<action>right drag</action> the item instead of using <action>left drag</action>. In that case, a rename dialog is shown where you can enter a new name for the file or folder."
7475 #: ../source/TortoiseGit_en.xml:9403
7476 msgid "Whenever you make changes in the repository using one of these methods, you will be presented with a log message entry dialog. If you dragged something by mistake, this is also your chance to cancel the action."
7480 #: ../source/TortoiseGit_en.xml:9408
7481 msgid "Sometimes when you try to open a path you will get an error message in place of the item details. This might happen if you specified an invalid URL, or if you don't have access permission, or if there is some other server problem. If you need to copy this message to include it in an email, just right click on it and use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Copy error message to clipboard</guimenuitem></menuchoice>, or simply use <keycap>Ctrl+C</keycap>."
7485 #: ../source/TortoiseGit_en.xml:9423
7486 msgid "Revision Graphs"
7490 #: ../source/TortoiseGit_en.xml:9428
7495 #: ../source/TortoiseGit_en.xml:9431
7496 msgid "revision graph"
7500 #: ../source/TortoiseGit_en.xml:9435
7501 msgid "A Revision Graph"
7505 #: ../source/TortoiseGit_en.xml:9433
7506 msgid "<placeholder-1/> Sometimes you need to know where branches and tags were taken from the trunk, and the ideal way to view this sort of information is as a graph or tree structure. That's when you need to use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Revision Graph...</guimenuitem></menuchoice>"
7510 #: ../source/TortoiseGit_en.xml:9446
7511 msgid "This command analyses the revision history and attempts to create a tree showing the points at which copies were taken, and when branches/tags were deleted."
7515 #: ../source/TortoiseGit_en.xml:9452
7516 msgid "In order to generate the graph, TortoiseGit must fetch all log messages from the repository root. Needless to say this can take several minutes even with a repository of a few thousand revisions, depending on server speed, network bandwidth, etc. If you try this with something like the <emphasis>Apache</emphasis> project which currently has over 500,000 revisions you could be waiting for some time."
7520 #: ../source/TortoiseGit_en.xml:9460
7521 msgid "The good news is that if you are using Log Caching, you only have to suffer this delay once. After that, log data is held locally. Log caching is enabled in TortoiseGit's settings."
7525 #: ../source/TortoiseGit_en.xml:9467
7526 msgid "Revision Graph Nodes"
7530 #: ../source/TortoiseGit_en.xml:9472
7531 msgid "Added file/folder"
7535 #: ../source/TortoiseGit_en.xml:9474
7536 msgid "Items which have been added, or created by copying another file/folder are shown using a rounded rectangle."
7540 #: ../source/TortoiseGit_en.xml:9481
7541 msgid "Deleted file/folder"
7545 #: ../source/TortoiseGit_en.xml:9483
7546 msgid "Deleted items eg. a branch which is no longer required, are shown using an octagon (rectangle with corners cut off)."
7550 #: ../source/TortoiseGit_en.xml:9490
7551 msgid "Branch tip revision"
7555 #: ../source/TortoiseGit_en.xml:9492
7556 msgid "Where a branch (or trunk or tag) has been modified since the last branch node, this is shown using an ellipse. Shown when the <guilabel>Show HEAD revisions</guilabel> option is selected."
7560 #: ../source/TortoiseGit_en.xml:9501
7561 msgid "Normal file/folder"
7565 #: ../source/TortoiseGit_en.xml:9503
7566 msgid "All other items are shown using a plain rectangle."
7570 #: ../source/TortoiseGit_en.xml:9468
7571 msgid "The revision graph shows several types of node: <placeholder-1/>"
7575 #: ../source/TortoiseGit_en.xml:9510
7576 msgid "Note that by default the graph only shows the points at which items were added or deleted. Showing every revision of a project will generate a very large graph for non-trivial cases. If you really want to see <emphasis>all</emphasis> revisions where changes were made, there is an option to do this in the <guilabel>View</guilabel> menu and on the toolbar."
7580 #: ../source/TortoiseGit_en.xml:9519
7581 msgid "Changing the View"
7585 #: ../source/TortoiseGit_en.xml:9527
7586 msgid "Group branches"
7590 #: ../source/TortoiseGit_en.xml:9529
7591 msgid "The default behavior (grouping off) will use one row per revision and all rows are sorted strictly by revision. As a result, long-living branches occupy a whole column for only a few changes and the graph becomes very broad."
7595 #: ../source/TortoiseGit_en.xml:9535
7596 msgid "This mode groups changes by branch, so that there is no global revision ordering: Consecutive revisions on a branch will be shown in (often) consecutive lines. Sub-branches, however, are arranged in such a way that later branches will be shown in the same column above older branches to keep the graph slim. As a result, a given row may contain changes from different revisions."
7600 #: ../source/TortoiseGit_en.xml:9547
7601 msgid "Oldest on top"
7605 #: ../source/TortoiseGit_en.xml:9549
7606 msgid "Normally the graph shows the oldest revision at the bottom, and the tree grows upwards. Use this option to grow down from the top instead."
7610 #: ../source/TortoiseGit_en.xml:9557
7611 msgid "Show HEAD revisions"
7615 #: ../source/TortoiseGit_en.xml:9559
7616 msgid "This ensures that the latest revision on every branch is always shown on the graph."
7620 #: ../source/TortoiseGit_en.xml:9566
7621 msgid "Exact copy sources"
7625 #: ../source/TortoiseGit_en.xml:9568
7626 msgid "When a branch/tag is made, the default behaviour is to show the branch as taken from the last node where a change was made. Strictly speaking this is inaccurate since the branches are often made from the current HEAD rather than a specific revision. So it is possible to show the more correct (but less useful) revision that was used to create the copy."
7630 #: ../source/TortoiseGit_en.xml:9580
7635 #: ../source/TortoiseGit_en.xml:9582
7636 msgid "If you want to see a graph of software development, tagged releases may be of little interest to you. This option hides the nodes for tags and shows them instead in the tooltip for the node that they were copied from. A tag icon on the right side of the source node indicates that tags were made."
7640 #: ../source/TortoiseGit_en.xml:9593
7641 msgid "Reduce cross lines"
7645 #: ../source/TortoiseGit_en.xml:9595
7646 msgid "If the layout of the graph has produced a lot of crossing lines, use this option to clean it up. This may make the layout columns appear in less logical places, for example in a diagonal line rather than a column, and it may take a little time to optimise."
7650 #: ../source/TortoiseGit_en.xml:9606
7655 #: ../source/TortoiseGit_en.xml:9608
7656 msgid "Sometimes the revision graph contains more revisions than you want to see. This option opens a dialog which allows you to restrict the range of revisions displayed, and to hide particular paths by name."
7660 #: ../source/TortoiseGit_en.xml:9520
7661 msgid "Because a revision graph is often quite complex, there are a number of features which can be used to tailor the view the way you want it. These are available in the <guilabel>View</guilabel> menu and from the toolbar. <placeholder-1/>"
7665 #: ../source/TortoiseGit_en.xml:9620
7666 msgid "Using the Graph"
7670 #: ../source/TortoiseGit_en.xml:9621
7671 msgid "To make it easier to navigate a large graph, use the overview window. This shows the entire graph in a small window, with the currently displayed portion highlighted. You can drag the highlighted area to change the displayed region."
7675 #: ../source/TortoiseGit_en.xml:9627
7676 msgid "The revision date, author and comments are shown in a hint box whenever the mouse hovers over a revision box."
7680 #: ../source/TortoiseGit_en.xml:9631
7681 msgid "If you select two revisions (Use <keycap>Ctrl</keycap>-<action>left click</action>), you can use the context menu to show the differences between these revisions. You can choose to show differences as at the branch creation points, but usually you will want to show the differences at the branch end points, i.e. at the HEAD revision."
7685 #: ../source/TortoiseGit_en.xml:9638
7686 msgid "You can view the differences as a Unified-Diff file, which shows all differences in a single file with minimal context. If you opt to <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Compare Revisions</guimenuitem></menuchoice> you will be presented with a list of changed files. <action>Double click</action> on a file name to fetch both revisions of the file and compare them using the visual difference tool."
7690 #: ../source/TortoiseGit_en.xml:9649
7691 msgid "If you <action>right click</action> on a revision you can use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Show Log</guimenuitem></menuchoice> to view the history."
7695 #: ../source/TortoiseGit_en.xml:9657
7696 msgid "You can also merge changes in the selected revision(s) into a different working copy. A folder selection dialog allows you to choose the working copy to merge into, but after that there is no confirmation dialog, nor any opportunity to try a dry run. It is a good idea to merge into an unmodified working copy so that you can revert the changes if it doesn't work out! This is a useful feature if you want to merge selected revisions from one branch to another."
7700 #: ../source/TortoiseGit_en.xml:9668
7701 msgid "Because Git cannot provide all the information required, a certain amount of interpretation is required, which can sometimes give strange results. Nevertheless, the output for the trunk will generally give useful results."
7705 #: ../source/TortoiseGit_en.xml:9678
7706 msgid "If you want to check the server again for newer information, you can simply refresh the view using <keycap>F5</keycap>. If you are using the log cache (enabled by default), this will check the repository for newer commits and fetch only the new ones. If the log cache was in offline mode, this will also attempt to go back online."
7710 #: ../source/TortoiseGit_en.xml:9686
7711 msgid "If you are using the log cache and you think the message content or author may have changed, you should use the log dialog to refresh the messages you need. Since the revision graph works from the repository root, we would have to invalidate the entire log cache, and refilling it could take a <emphasis>very</emphasis> long time."
7715 #: ../source/TortoiseGit_en.xml:9697
7716 msgid "Exporting a Git Working Copy"
7720 #: ../source/TortoiseGit_en.xml:9699
7725 #: ../source/TortoiseGit_en.xml:9702
7726 msgid "unversioned 'working copy'"
7730 #: ../source/TortoiseGit_en.xml:9704
7731 msgid "Sometimes you may want a copy of your working tree without any of those <filename>.svn</filename> directories, e.g. to create a zipped tarball of your source, or to export to a web server. Instead of making a copy and then deleting all those <filename>.svn</filename> directories manually, TortoiseGit offers the command <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Export...</guimenuitem></menuchoice>. Exporting from a URL and exporting from a working copy are treated slightly differently."
7735 #: ../source/TortoiseGit_en.xml:9719
7736 msgid "The Export-from-URL Dialog"
7740 #: ../source/TortoiseGit_en.xml:9717
7741 msgid "<placeholder-1/> If you execute this command on an unversioned folder, TortoiseGit will assume that the selected folder is the target, and open a dialog for you to enter the URL and revision to export from. This dialog has options to export only the top level folder, to omit external references, and to override the line end style for files which have the <literal>svn:eol-style</literal> property set."
7745 #: ../source/TortoiseGit_en.xml:9729
7746 msgid "Of course you can export directly from the repository too. Use the Repository Browser to navigate to the relevant subtree in your repository, then use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Export</guimenuitem></menuchoice>. You will get the <guilabel>Export from URL</guilabel> dialog described above."
7750 #: ../source/TortoiseGit_en.xml:9739
7751 msgid "If you execute this command on your working copy you'll be asked for a place to save the <emphasis>clean</emphasis> working copy without the <filename>.svn</filename> folders. By default, only the versioned files are exported, but you can use the <guilabel>Export unversioned files too</guilabel> checkbox to include any other unversioned files which exist in your WC and not in the repository. External references using <literal>svn:externals</literal> can be omitted if required."
7755 #: ../source/TortoiseGit_en.xml:9749
7756 msgid "Another way to export from a working copy is to <action>right drag</action> the working copy folder to another location and choose <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>SVN Export here</guimenuitem></menuchoice> or <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>SVN Export all here</guimenuitem></menuchoice>. The second option includes the unversioned files as well."
7760 #: ../source/TortoiseGit_en.xml:9763
7761 msgid "When exporting from a working copy, if the target folder already contains a folder of the same name as the one you are exporting, you will be given the option to overwrite the existing content, or to create a new folder with an automatically generated name, eg. <literal>Target (1)</literal>."
7765 #: ../source/TortoiseGit_en.xml:9771
7766 msgid "Removing a working copy from version control"
7771 #: ../source/TortoiseGit_en.xml:9773
7772 #: ../source/TortoiseGit_en.xml:13290
7777 #: ../source/TortoiseGit_en.xml:9775
7778 msgid "Sometimes you have a working copy which you want to convert back to a normal folder without the <literal>.svn</literal> directories. What you really need is an export-in-place command, that just removes the control directories rather than generating a new clean directory tree."
7782 #: ../source/TortoiseGit_en.xml:9782
7783 msgid "The answer is surprisingly simple - export the folder to itself! TortoiseGit detects this special case and asks if you want to make the working copy unversioned. If you answer <emphasis>yes</emphasis> the control directories will be removed and you will have a plain, unversioned directory tree."
7787 #: ../source/TortoiseGit_en.xml:9792
7788 msgid "Relocating a working copy"
7792 #: ../source/TortoiseGit_en.xml:9794
7797 #: ../source/TortoiseGit_en.xml:9797
7802 #: ../source/TortoiseGit_en.xml:9800
7803 msgid "repository URL changed"
7807 #: ../source/TortoiseGit_en.xml:9803
7808 msgid "server moved"
7812 #: ../source/TortoiseGit_en.xml:9806
7813 msgid "moved server"
7817 #: ../source/TortoiseGit_en.xml:9811
7818 msgid "The Relocate Dialog"
7822 #: ../source/TortoiseGit_en.xml:9809
7823 msgid "<placeholder-1/> If your repository has for some reason changed it's location (IP/URL). Maybe you're even stuck and can't commit and you don't want to checkout your working copy again from the new location and to move all your changed data back into the new working copy, <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Relocate</guimenuitem></menuchoice> is the command you are looking for. It basically does very little: it scans all <filename>entries</filename> files in the <filename>.svn</filename> folder and changes the URL of the entries to the new value."
7827 #: ../source/TortoiseGit_en.xml:9835
7828 msgid "The IP address of the server has changed."
7832 #: ../source/TortoiseGit_en.xml:9838
7833 msgid "The protocol has changed (e.g. http:// to https://)."
7837 #: ../source/TortoiseGit_en.xml:9841
7838 msgid "The repository root path in the server setup has changed."
7842 #: ../source/TortoiseGit_en.xml:9829
7843 msgid "<emphasis>This is a very infrequently used operation</emphasis>. The relocate command is <emphasis>only</emphasis> used if the URL of the repository root has changed. Possible reasons are: <placeholder-1/> Put another way, you need to relocate when your working copy is referring to the same location in the same repository, but the repository itself has moved."
7847 #: ../source/TortoiseGit_en.xml:9852
7848 msgid "You want to move to a different Git repository. In that case you should perform a clean checkout from the new repository location."
7852 #: ../source/TortoiseGit_en.xml:9858
7853 msgid "You want to switch to a different branch or directory within the same repository. To do that you should use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Switch...</guimenuitem></menuchoice>. Read <xref linkend=\"tsvn-dug-switch-1\"/> for more information."
7857 #: ../source/TortoiseGit_en.xml:9848
7858 msgid "It does not apply if: <placeholder-1/>"
7862 #: ../source/TortoiseGit_en.xml:9870
7863 msgid "If you use relocate in either of the cases above, it <emphasis>will corrupt your working copy</emphasis> and you will get many unexplainable error messages while updating, committing, etc. Once that has happened, the only fix is a fresh checkout."
7867 #: ../source/TortoiseGit_en.xml:9879
7868 msgid "Integration with Bug Tracking Systems / Issue Trackers"
7872 #: ../source/TortoiseGit_en.xml:9881
7873 msgid "bug tracking"
7877 #: ../source/TortoiseGit_en.xml:9884
7882 #: ../source/TortoiseGit_en.xml:9887
7883 msgid "issue tracker"
7887 #: ../source/TortoiseGit_en.xml:9890
7892 #: ../source/TortoiseGit_en.xml:9892
7893 msgid "It is very common in Software Development for changes to be related to a specific bug or issue ID. Users of bug tracking systems (issue trackers) would like to associate the changes they make in Git with a specific ID in their issue tracker. Most issue trackers therefore provide a pre-commit hook script which parses the log message to find the bug ID with which the commit is associated. This is somewhat error prone since it relies on the user to write the log message properly so that the pre-commit hook script can parse it correctly."
7897 #: ../source/TortoiseGit_en.xml:9905
7898 msgid "When the user enters a log message, a well defined line including the issue number associated with the commit can be added automatically. This reduces the risk that the user enters the issue number in a way the bug tracking tools can't parse correctly."
7902 #: ../source/TortoiseGit_en.xml:9911
7903 msgid "Or TortoiseGit can highlight the part of the entered log message which is recognized by the issue tracker. That way the user knows that the log message can be parsed correctly."
7907 #: ../source/TortoiseGit_en.xml:9918
7908 msgid "When the user browses the log messages, TortoiseGit creates a link out of each bug ID in the log message which fires up the browser to the issue mentioned."
7912 #: ../source/TortoiseGit_en.xml:9901
7913 msgid "TortoiseGit can help the user in two ways: <placeholder-1/>"
7917 #: ../source/TortoiseGit_en.xml:9927
7918 msgid "Adding Issue Numbers to Log Messages"
7922 #: ../source/TortoiseGit_en.xml:9928
7923 msgid "You can integrate a bug tracking tool of your choice in TortoiseGit. To do this, you have to define some properties, which start with <literal>bugtraq:</literal>. They must be set on Folders: (<xref linkend=\"tsvn-dug-propertypage\"/>)"
7927 #: ../source/TortoiseGit_en.xml:9943
7928 msgid "Set this property to the URL of your bug tracking tool. It must be properly URI encoded and it has to contain <literal>%BUGID%</literal>. <literal>%BUGID%</literal> is replaced with the Issue number you entered. This allows TortoiseGit to display a link in the log dialog, so when you are looking at the revision log you can jump directly to your bug tracking tool. You do not have to provide this property, but then TortoiseGit shows only the issue number and not the link to it. e.g the TortoiseGit project is using <systemitem class=\"url\">http://issues.TortoiseGit.net/?do=details&id=%BUGID%</systemitem>"
7932 #: ../source/TortoiseGit_en.xml:9958
7933 msgid "You can also use relative URLs instead of absolute ones. This is useful when your issue tracker is on the same domain/server as your source repository. In case the domain name ever changes, you don't have to adjust the <literal>bugtraq:url</literal> property. There are two ways to specify a relative URL:"
7937 #: ../source/TortoiseGit_en.xml:9965
7938 msgid "If it begins with the string <literal>^/</literal> it is assumed to be relative to the repository root. For example, <literal>^/../?do=details&id=%BUGID%</literal> will resolve to <systemitem class=\"url\">http://TortoiseGit.net/?do=details&id=%BUGID%</systemitem> if your repository is located on <systemitem class=\"url\">http://TortoiseGit.net/svn/trunk/</systemitem>."
7942 #: ../source/TortoiseGit_en.xml:9974
7943 msgid "A URL beginning with the string <literal>/</literal> is assumed to be relative to the server's hostname. For example <literal>/?do=details&id=%BUGID%</literal> will resolve to <systemitem class=\"url\">http://TortoiseGit.net/?do=details&id=%BUGID%</systemitem> if your repository is located anywhere on <systemitem class=\"url\">http://TortoiseGit.net</systemitem>."
7947 #: ../source/TortoiseGit_en.xml:9988
7948 msgid "Set this to <literal>true</literal>, if you want TortoiseGit to warn you because of an empty issue-number text field. Valid values are <literal>true/false</literal>. <emphasis> If not defined, <literal>false</literal> is assumed. </emphasis>"
7952 #: ../source/TortoiseGit_en.xml:9934
7953 msgid "There are two ways to integrate TortoiseGit with issue trackers. One is based on simple strings, the other is based on <emphasis>regular expressions</emphasis>. The properties used by both approaches are: <placeholder-1/>"
7957 #: ../source/TortoiseGit_en.xml:10002
7958 msgid "Issue Number in Text Box"
7962 #: ../source/TortoiseGit_en.xml:10011
7963 msgid "This property activates the bug tracking system in <emphasis>Input field</emphasis> mode. If this property is set, then TortoiseGit will prompt you to enter an issue number when you commit your changes. It's used to add a line at the end of the log message. It must contain <literal>%BUGID%</literal>, which is replaced with the issue number on commit. This ensures that your commit log contains a reference to the issue number which is always in a consistent format and can be parsed by your bug tracking tool to associate the issue number with a particular commit. As an example you might use <literal>Issue : %BUGID%</literal>, but this depends on your Tool."
7967 #: ../source/TortoiseGit_en.xml:10032
7968 msgid "This property defines if the bug-ID is appended (true) to the end of the log message or inserted (false) at the start of the log message. Valid values are <literal>true/false</literal>. <emphasis> If not defined, <literal>true</literal> is assumed, so that existing projects don't break. </emphasis>"
7972 #: ../source/TortoiseGit_en.xml:10047
7973 msgid "This text is shown by TortoiseGit on the commit dialog to label the edit box where you enter the issue number. If it's not set, <literal>Bug-ID / Issue-Nr:</literal> will be displayed. Keep in mind though that the window will not be resized to fit this label, so keep the size of the label below 20-25 characters."
7977 #: ../source/TortoiseGit_en.xml:10061
7978 msgid "If set to <literal>true</literal> only numbers are allowed in the issue-number text field. An exception is the comma, so you can comma separate several numbers. Valid values are <literal>true/false</literal>. <emphasis> If not defined, <literal>true</literal> is assumed. </emphasis>"
7982 #: ../source/TortoiseGit_en.xml:10003
7983 msgid "In the simple approach, TortoiseGit shows the user a separate input field where a bug ID can be entered. Then a separate line is appended/prepended to the log message the user entered. <placeholder-1/>"
7987 #: ../source/TortoiseGit_en.xml:10076
7988 msgid "Issue Numbers Using Regular Expressions"
7992 #: ../source/TortoiseGit_en.xml:10088
7993 msgid "This property activates the bug tracking system in <emphasis>Regex</emphasis> mode. It contains either a single regular expressions, or two regular expressions separated by a newline."
7997 #: ../source/TortoiseGit_en.xml:10094
7998 msgid "If two expressions are set, then the first expression is used as a pre-filter to find expressions which contain bug IDs. The second expression then extracts the bare bug IDs from the result of the first regex. This allows you to use a list of bug IDs and natural language expressions if you wish. e.g. you might fix several bugs and include a string something like this: <quote>This change resolves issues #23, #24 and #25</quote>"
8002 #: ../source/TortoiseGit_en.xml:10104
8003 msgid "If you want to catch bug IDs as used in the expression above inside a log message, you could use the following regex strings, which are the ones used by the TortoiseGit project: <literal>[Ii]ssues?:?(\\s*(,|and)?\\s*#\\d+)+</literal> and <literal>(\\d+)</literal>"
8007 #: ../source/TortoiseGit_en.xml:10111
8008 msgid "The first expression picks out <quote>issues #23, #24 and #25</quote> from the surrounding log message. The second regex extracts plain decimal numbers from the output of the first regex, so it will return <quote>23</quote>, <quote>24</quote> and <quote>25</quote> to use as bug IDs."
8012 #: ../source/TortoiseGit_en.xml:10118
8013 msgid "Breaking the first regex down a little, it must start with the word <quote>issue</quote>, possibly capitalised. This is optionally followed by an <quote>s</quote> (more than one issue) and optionally a colon. This is followed by one or more groups each having zero or more leading whitespace, an optional comma or <quote>and</quote> and more optional space. Finally there is a mandatory <quote>#</quote> and a mandatory decimal number."
8017 #: ../source/TortoiseGit_en.xml:10127
8018 msgid "If only one expression is set, then the bare bug IDs must be matched in the groups of the regex string. Example: <literal>[Ii]ssue(?:s)? #?(\\d+)</literal> This method is required by a few issue trackers, e.g. trac, but it is harder to construct the regex. We recommend that you only use this method if your issue tracker documentation tells you to."
8022 #: ../source/TortoiseGit_en.xml:10136
8023 msgid "If you are unfamiliar with regular expressions, take a look at the introduction at <ulink url=\"http://en.wikipedia.org/wiki/Regular_expression\"><citetitle>http://en.wikipedia.org/wiki/Regular_expression</citetitle></ulink>, and the online documentation and tutorial at <ulink url=\"http://www.regular-expressions.info/\"><citetitle>http://www.regular-expressions.info/</citetitle></ulink>."
8027 #: ../source/TortoiseGit_en.xml:10077
8028 msgid "In the approach with <emphasis>regular expressions</emphasis>, TortoiseGit doesn't show a separate input field but marks the part of the log message the user enters which is recognized by the issue tracker. This is done while the user writes the log message. This also means that the bug ID can be anywhere inside a log message! This method is much more flexible, and is the one used by the TortoiseGit project itself. <placeholder-1/>"
8032 #: ../source/TortoiseGit_en.xml:10152
8033 msgid "If both the <literal>bugtraq:message</literal> and <literal>bugtraq:logregex</literal> properties are set, <literal>logregex</literal> takes precedence."
8037 #: ../source/TortoiseGit_en.xml:10157
8038 msgid "Even if you don't have an issue tracker with a pre-commit hook parsing your log messages, you still can use this to turn the issues mentioned in your log messages into links!"
8042 #: ../source/TortoiseGit_en.xml:10162
8043 msgid "And even if you don't need the links, the issue numbers show up as a separate column in the log dialog, making it easier to find the changes which relate to a particular issue."
8048 #: ../source/TortoiseGit_en.xml:10175
8049 #: ../source/TortoiseGit_en.xml:10327
8050 msgid "Set the Properties on Folders"
8055 #: ../source/TortoiseGit_en.xml:10176
8056 #: ../source/TortoiseGit_en.xml:10328
8057 msgid "These properties must be set on folders for the system to work. When you commit a file or folder the properties are read from that folder. If the properties are not found there, TortoiseGit will search upwards through the folder tree to find them until it comes to an unversioned folder, or the tree root (eg. <literal>C:\\</literal>) is found. If you can be sure that each user checks out only from e.g <filename>trunk/</filename> and not some sub-folder, then it's enough if you set the properties on <filename>trunk/</filename>. If you can't be sure, you should set the properties recursively on each sub-folder. A property setting deeper in the project hierarchy overrides settings on higher levels (closer to <filename>trunk/</filename>)."
8062 #: ../source/TortoiseGit_en.xml:10190
8063 #: ../source/TortoiseGit_en.xml:10342
8064 msgid "For <literal>tsvn:</literal> properties <emphasis>only</emphasis> you can use the <guilabel>Recursive</guilabel> checkbox to set the property to all sub-folders in the hierarchy, without also setting it on all files."
8068 #: ../source/TortoiseGit_en.xml:10197
8069 msgid "This issue tracker integration is not restricted to TortoiseGit; it can be used with any Git client. For more information, read the full <ulink url=\"http://TortoiseGit.tigris.org/svn/TortoiseGit/trunk/doc/issuetrackers.txt\"><citetitle>Issue Tracker Integration Specification</citetitle></ulink>."
8073 #: ../source/TortoiseGit_en.xml:10206
8074 msgid "Getting Information from the Issue Tracker"
8078 #: ../source/TortoiseGit_en.xml:10207
8079 msgid "The previous section deals with adding issue information to the log messages. But what if you need to get information from the issue tracker? The commit dialog has a Windows COM interface which allows integration an external program that can talk to your tracker. Typically you might want to query the tracker to get a list of open issues assigned to you, so that you can pick the issues that are being addressed in this commit."
8083 #: ../source/TortoiseGit_en.xml:10216
8084 msgid "Any such interface is of course highly specific to your system, so we cannot provide this part, and describing how to create such a program is beyond the scope of this manual. The interface definition and sample programs can be obtained from the <literal>contrib</literal> folder in the in the <ulink url=\"http://TortoiseGit.tigris.org/svn/TortoiseGit/trunk/contrib/issue-tracker-plugins\"><citetitle>TortoiseGit repository</citetitle></ulink>."
8088 #: ../source/TortoiseGit_en.xml:10235
8089 msgid "Example issue tracker query dialog"
8093 #: ../source/TortoiseGit_en.xml:10227
8094 msgid "For illustration purposes, let's suppose that your system administrator has provided you with an issue tracker plugin which you have installed, and that you have set up some of your working copies to use the plugin in TortoiseGit's settings dialog. When you open the commit dialog from a working copy to which the plugin has been assigned, you will see a new button at the top of the dialog. <placeholder-1/> In this example you can select one or more open issues. The plugin can then generate specially formatted text which it adds to your log message."
8098 #: ../source/TortoiseGit_en.xml:10245
8099 msgid "Integration with Web-based Repository Viewers"
8103 #: ../source/TortoiseGit_en.xml:10247
8108 #: ../source/TortoiseGit_en.xml:10250
8113 #: ../source/TortoiseGit_en.xml:10253
8118 #: ../source/TortoiseGit_en.xml:10255
8119 msgid "There are several web-based repository viewers available for use with Git such as <ulink url=\"http://www.viewvc.org/\"><citetitle>ViewVC</citetitle></ulink> and <ulink url=\"http://websvn.tigris.org/\"><citetitle>WebSVN</citetitle></ulink>. TortoiseGit provides a means to link with these viewers."
8123 #: ../source/TortoiseGit_en.xml:10267
8124 msgid "You can integrate a repo viewer of your choice in TortoiseGit. To do this, you have to define some properties which define the linkage. They must be set on Folders: (<xref linkend=\"tsvn-dug-propertypage\"/>)"
8128 #: ../source/TortoiseGit_en.xml:10277
8129 msgid "Set this property to the URL of your repo viewer to view all changes in a specific revision. It must be properly URI encoded and it has to contain <literal>%REVISION%</literal>. <literal>%REVISION%</literal> is replaced with the revision number in question. This allows TortoiseGit to display a context menu entry in the log dialog <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>View revision in webviewer</guimenuitem></menuchoice>"
8133 #: ../source/TortoiseGit_en.xml:10296
8134 msgid "Set this property to the URL of your repo viewer to view changes to a specific file in a specific revision. It must be properly URI encoded and it has to contain <literal>%REVISION%</literal> and <literal>%PATH%</literal>. <literal>%PATH%</literal> is replaced with the path relative to the repository root. This allows TortoiseGit to display a context menu entry in the log dialog <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>View revision and path in webviewer</guimenuitem></menuchoice> For example, if you right-click in the log dialog bottom pane on a file entry <literal>/trunk/src/file</literal> then the <literal>%PATH%</literal> in the URL will be replaced with <literal>/trunk/src/file</literal>."
8138 #: ../source/TortoiseGit_en.xml:10318
8139 msgid "You can also use relative URLs instead of absolute ones. This is useful in case your web viewer is on the same domain/server as your source repository. In case the domain name ever changes, you don't have to adjust the <literal>webviewer:revision</literal> and <literal>webviewer:pathrevision</literal> property. The format is the same as for the <literal>bugtraq:url</literal> property. See <xref linkend=\"tsvn-dug-bugtracker\"/>."
8143 #: ../source/TortoiseGit_en.xml:10351
8144 msgid "TortoiseGit's Settings"
8148 #: ../source/TortoiseGit_en.xml:10353
8153 #: ../source/TortoiseGit_en.xml:10355
8154 msgid "To find out what the different settings are for, just leave your mouse pointer a second on the editbox/checkbox... and a helpful tooltip will popup."
8158 #: ../source/TortoiseGit_en.xml:10364
8159 msgid "General Settings"
8163 #: ../source/TortoiseGit_en.xml:10366
8168 #: ../source/TortoiseGit_en.xml:10370
8169 msgid "The Settings Dialog, General Page"
8173 #: ../source/TortoiseGit_en.xml:10368
8174 msgid "<placeholder-1/> This dialog allows you to specify your preferred language, and the Git-specific settings."
8178 #: ../source/TortoiseGit_en.xml:10378
8183 #: ../source/TortoiseGit_en.xml:10380
8184 msgid "Selects your user interface language. What else did you expect?"
8188 #: ../source/TortoiseGit_en.xml:10387
8189 msgid "Automatically check for newer versions every week"
8193 #: ../source/TortoiseGit_en.xml:10389
8194 msgid "If checked, TortoiseGit will contact its download site once a week to see if there is a newer version of the program available. Use <guibutton>Check now</guibutton> if you want an answer right away. The new version will not be downloaded; you simply receive an information dialog telling you that the new version is available."
8198 #: ../source/TortoiseGit_en.xml:10400
8199 msgid "System sounds"
8203 #: ../source/TortoiseGit_en.xml:10406
8208 #: ../source/TortoiseGit_en.xml:10411
8213 #: ../source/TortoiseGit_en.xml:10416
8218 #: ../source/TortoiseGit_en.xml:10402
8219 msgid "TortoiseGit has three custom sounds which are installed by default. <placeholder-1/> You can select different sounds (or turn these sounds off completely) using the Windows Control Panel. <guibutton>Configure</guibutton> is a shortcut to the Control Panel."
8223 #: ../source/TortoiseGit_en.xml:10428
8224 msgid "Global ignore pattern"
8228 #: ../source/TortoiseGit_en.xml:10431
8229 msgid "exclude pattern"
8233 #: ../source/TortoiseGit_en.xml:10434
8234 msgid "global ignore"
8238 #: ../source/TortoiseGit_en.xml:10436
8239 msgid "Global ignore patterns are used to prevent unversioned files from showing up e.g. in the commit dialog. Files matching the patterns are also ignored by an import. Ignore files or directories by typing in the names or extensions. Patterns are separated by spaces e.g. <literal>*/bin */obj *.bak *.~?? *.jar *.[Tt]mp</literal>. Remember that these patterns may be used against paths which include N levels of parent directory. Setting ignore patterns for anything other than simple file extensions is not as trivial as it first appears, so be sure to read <xref linkend=\"tsvn-dug-ignore-glob\"/> for more information on the pattern-matching syntax, and how paths are checked."
8243 #: ../source/TortoiseGit_en.xml:10450
8244 msgid "Note that the ignore patterns you specify here will also affect other Git clients running on your PC, including the command line client."
8248 #: ../source/TortoiseGit_en.xml:10456
8249 msgid "If you use the Git configuration file to set a <literal>global-ignores</literal> pattern, it will override the settings you make here. The Git configuration file is accessed using the <guibutton>Edit</guibutton> as described below."
8253 #: ../source/TortoiseGit_en.xml:10464
8254 msgid "This ignore pattern will affect all your projects. It is not versioned, so it will not affect other users. By contrast you can also use the versioned <literal>svn:ignore</literal> property to exclude files or directories from version control. Read <xref linkend=\"tsvn-dug-ignore\"/> for more information."
8258 #: ../source/TortoiseGit_en.xml:10476
8259 msgid "Set file dates to the <quote>last commit time</quote>"
8263 #: ../source/TortoiseGit_en.xml:10478
8264 msgid "This option tells TortoiseGit to set the file dates to the last commit time when doing a checkout or an update. Otherwise TortoiseGit will use the current date. If you are developing software it is generally best to use the current date because build systems normally look at the date stamps to decide which files need compiling. If you use <quote>last commit time</quote> and revert to an older file revision, your project may not compile as you expect it to."
8268 #: ../source/TortoiseGit_en.xml:10492
8269 msgid "Git configuration file"
8273 #: ../source/TortoiseGit_en.xml:10494
8274 msgid "Use <guibutton>Edit</guibutton> to edit the Git configuration file directly. Some settings cannot be modified directly by TortoiseGit, and need to be set here instead. For more information about the Git <filename>config</filename> file see the <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.advanced.confarea.html\"><citetitle>Runtime Configuration Area</citetitle></ulink>. The section on <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.advanced.props.html#svn.advanced.props.auto\"><citetitle>Automatic Property Setting</citetitle></ulink> is of particular interest, and that is configured here. Note that Git can read configuration information from several places, and you need to know which one takes priority. Refer to <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.advanced.confarea.html#svn.advanced.confarea.windows-registry\"><citetitle>Configuration and the Windows Registry</citetitle></ulink> to find out more."
8278 #: ../source/TortoiseGit_en.xml:10519
8279 msgid "Use <filename>_svn</filename> instead of <filename>.svn</filename> directories"
8283 #: ../source/TortoiseGit_en.xml:10521
8284 msgid "VS.NET when used with web projects can't handle the <literal>.svn</literal> folders that Git uses to store its internal information. This is not a bug in Git. The bug is in VS.NET and the frontpage extensions it uses. Read <xref linkend=\"tsvn-dug-settings-asp-dot-net\"/> to find out more about this issue."
8288 #: ../source/TortoiseGit_en.xml:10528
8289 msgid "If you want to change the behaviour of Git and TortoiseGit, you can use this checkbox to set the environment variable which controls this."
8293 #: ../source/TortoiseGit_en.xml:10533
8294 msgid "You should note that changing this option will not automatically convert existing working copies to use the new admin directory. You will have to do that yourself using a script (See our FAQ) or simply check out a fresh working copy."
8298 #: ../source/TortoiseGit_en.xml:10543
8299 msgid "Context Menu Settings"
8303 #: ../source/TortoiseGit_en.xml:10547
8304 msgid "The Settings Dialog, Context Menu Page"
8308 #: ../source/TortoiseGit_en.xml:10545
8309 msgid "<placeholder-1/> This page allows you to specify which of the TortoiseGit context menu entries will show up in the main context menu, and which will appear in the TortoiseGit submenu. By default most items are unchecked and appear in the submenu."
8313 #: ../source/TortoiseGit_en.xml:10555
8314 msgid "There is a special case for <guilabel>Get Lock</guilabel>. You can of course promote it to the top level using the list above, but as most files don't need locking this just adds clutter. However, a file with the <literal>svn:needs-lock</literal> property needs this action every time it is edited, so in that case it is very useful to have at the top level. Checking the box here means that when a file is selected which has the <literal>svn:needs-lock</literal> property set, <guilabel>Get Lock</guilabel> will always appear at the top level."
8318 #: ../source/TortoiseGit_en.xml:10567
8319 msgid "TortoiseGit Dialog Settings 1"
8323 #: ../source/TortoiseGit_en.xml:10571
8324 msgid "The Settings Dialog, Dialogs 1 Page"
8328 #: ../source/TortoiseGit_en.xml:10569
8329 msgid "<placeholder-1/> This dialog allows you to configure some of TortoiseGit's dialogs the way you like them."
8333 #: ../source/TortoiseGit_en.xml:10579
8334 msgid "Default number of log messages"
8338 #: ../source/TortoiseGit_en.xml:10581
8339 msgid "Limits the number of log messages that TortoiseGit fetches when you first select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Show Log</guimenuitem></menuchoice> Useful for slow server connections. You can always use <guibutton>Show All</guibutton> or <guibutton>Next 100</guibutton> to get more messages."
8343 #: ../source/TortoiseGit_en.xml:10595
8344 msgid "Font for log messages"
8348 #: ../source/TortoiseGit_en.xml:10597
8349 msgid "Selects the font face and size used to display the log message itself in the middle pane of the Revision Log dialog, and when composing log messages in the Commit dialog."
8353 #: ../source/TortoiseGit_en.xml:10606
8354 msgid "Short date / time format in log messages"
8358 #: ../source/TortoiseGit_en.xml:10608
8359 msgid "If the standard long messages use up too much space on your screen use the short format."
8363 #: ../source/TortoiseGit_en.xml:10615
8364 msgid "Progress Dialog"
8368 #: ../source/TortoiseGit_en.xml:10617
8369 msgid "TortoiseGit can automatically close all progress dialogs when the action is finished without error. This setting allows you to select the conditions for closing the dialogs. The default (recommended) setting is <guilabel>Close manually</guilabel> which allows you to review all messages and check what has happened. However, you may decide that you want to ignore some types of message and have the dialog close automatically if there are no critical changes."
8373 #: ../source/TortoiseGit_en.xml:10628
8374 msgid "<guilabel>Auto-close if no merges, adds or deletes</guilabel> means that the progress dialog will close if there were simple updates, but if changes from the repository were merged with yours, or if any files were added or deleted, the dialog will remain open. It will also stay open if there were any conflicts or errors during the operation."
8378 #: ../source/TortoiseGit_en.xml:10636
8379 msgid "<guilabel>Auto-close if no merges, adds or deletes for local operations</guilabel> means that the progress dialog will close as for <guilabel>Auto-close if no merges, adds or deletes</guilabel> but only for local operations like adding files or reverting changes. For remote operations the dialog will stay open."
8383 #: ../source/TortoiseGit_en.xml:10644
8384 msgid "<guilabel>Auto-close if no conflicts</guilabel> relaxes the criteria further and will close the dialog even if there were merges, adds or deletes. However, if there were any conflicts or errors, the dialog remains open."
8388 #: ../source/TortoiseGit_en.xml:10651
8389 msgid "<guilabel>Auto-close if no errors</guilabel> always closes the dialog even if there were conflicts. The only condition that keeps the dialog open is an error condition, which occurs when Git is unable to complete the task. For example, an update fails because the server is inaccessible, or a commit fails because the working copy is out-of-date."
8393 #: ../source/TortoiseGit_en.xml:10663
8394 msgid "Use URL of WC as the default <quote>From:</quote> URL"
8398 #: ../source/TortoiseGit_en.xml:10665
8399 msgid "In the merge dialog, the default behaviour is for the <guilabel>From:</guilabel> URL to be remembered between merges. However, some people like to perform merges from many different points in their hierarchy, and find it easier to start out with the URL of the current working copy. This can then be edited to refer to a parallel path on another branch."
8403 #: ../source/TortoiseGit_en.xml:10677
8404 msgid "Default checkout path"
8408 #: ../source/TortoiseGit_en.xml:10679
8409 msgid "You can specify the default path for checkouts. If you keep all your checkouts in one place, it is useful to have the drive and folder pre-filled so you only have to add the new folder name to the end."
8413 #: ../source/TortoiseGit_en.xml:10688
8414 msgid "Default checkout URL"
8418 #: ../source/TortoiseGit_en.xml:10690
8419 msgid "You can also specify the default URL for checkouts. If you often checkout sub-projects of some very large project, it can be useful to have the URL pre-filled so you only have to add the sub-project name to the end."
8423 #: ../source/TortoiseGit_en.xml:10701
8424 msgid "TortoiseGit Dialog Settings 2"
8428 #: ../source/TortoiseGit_en.xml:10705
8429 msgid "The Settings Dialog, Dialogs 2 Page"
8433 #: ../source/TortoiseGit_en.xml:10711
8434 msgid "Recurse into unversioned folders"
8438 #: ../source/TortoiseGit_en.xml:10713
8439 msgid "If this box is checked (default state), then whenever the status of an unversioned folder is shown in the <guilabel>Add</guilabel>, <guilabel>Commit</guilabel> or <guilabel>Check for Modifications</guilabel> dialog, every child file and folder is also shown. If you uncheck this box, only the unversioned parent is shown. Unchecking reduces clutter in these dialogs. In that case if you select an unversioned folder for Add, it is added recursively."
8443 #: ../source/TortoiseGit_en.xml:10727
8444 msgid "Use auto-completion of file paths and keywords"
8448 #: ../source/TortoiseGit_en.xml:10729
8449 msgid "The commit dialog includes a facility to parse the list of filenames being committed. When you type the first 3 letters of an item in the list, the auto-completion box pops up, and you can press Enter to complete the filename. Check the box to enable this feature."
8453 #: ../source/TortoiseGit_en.xml:10739
8454 msgid "Timeout in seconds to stop the auto-completion parsing"
8458 #: ../source/TortoiseGit_en.xml:10741
8459 msgid "The auto-completion parser can be quite slow if there are a lot of large files to check. This timeout stops the commit dialog being held up for too long. If you are missing important auto-completion information, you can extend the timeout."
8463 #: ../source/TortoiseGit_en.xml:10750
8464 msgid "Only use spellchecker when <literal>tsvn:projectlanguage</literal> is set"
8468 #: ../source/TortoiseGit_en.xml:10752
8469 msgid "If you don't wish to use the spellchecker for all commits, check this box. The spellchecker will still be enabled where the project properties require it."
8473 #: ../source/TortoiseGit_en.xml:10760
8474 msgid "Max. items to keep in the log message history"
8478 #: ../source/TortoiseGit_en.xml:10762
8479 msgid "TortoiseGit stores the last 25 log messages you entered for each repository. You can customize the number stored here. If you have many different repositories, you may wish to reduce this to avoid filling your registry."
8483 #: ../source/TortoiseGit_en.xml:10771
8484 msgid "Re-open commit and branch/tag dialog after a commit failed"
8488 #: ../source/TortoiseGit_en.xml:10773
8489 msgid "When a commit fails for some reason (working copy needs updating, pre-commit hook rejects commit, network error, etc), you can select this option to keep the commit dialog open ready to try again. However, you should be aware that this can lead to problems. If the failure means you need to update your working copy, and that update leads to conflicts you must resolve those first."
8493 #: ../source/TortoiseGit_en.xml:10784
8494 msgid "Select items automatically"
8498 #: ../source/TortoiseGit_en.xml:10786
8499 msgid "The normal behaviour in the commit dialog is for all modified (versioned) items to be selected for commit automatically. If you prefer to start with nothing selected and pick the items for commit manually, uncheck this box."
8503 #: ../source/TortoiseGit_en.xml:10795
8504 msgid "Contact the repository on startup"
8508 #: ../source/TortoiseGit_en.xml:10797
8509 msgid "The Check for Modifications dialog checks the working copy by default, and only contacts the repository when you click <guibutton>Check repository</guibutton>. If you always want to check the repository, you can use this setting to make that action happen automatically."
8513 #: ../source/TortoiseGit_en.xml:10807
8514 msgid "Show Lock dialog before locking files"
8518 #: ../source/TortoiseGit_en.xml:10809
8519 msgid "When you select one or more files and then use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Lock</guimenuitem></menuchoice> to take out a lock on those files, on some projects it is customary to write a lock message explaining why you have locked the files. If you do not use lock messages, you can uncheck this box to skip that dialog and lock the files immediately."
8523 #: ../source/TortoiseGit_en.xml:10821
8524 msgid "If you use the lock command on a folder, you are always presented with the lock dialog as that also gives you the option to select files for locking."
8528 #: ../source/TortoiseGit_en.xml:10826
8529 msgid "If your project is using the <literal>tsvn:lockmsgminsize</literal> property, you will see the lock dialog regardless of this setting because the project <emphasis>requires</emphasis> lock messages."
8533 #: ../source/TortoiseGit_en.xml:10836
8534 msgid "TortoiseGit Colour Settings"
8538 #: ../source/TortoiseGit_en.xml:10840
8539 msgid "The Settings Dialog, Colours Page"
8543 #: ../source/TortoiseGit_en.xml:10838
8544 msgid "<placeholder-1/> This dialog allows you to configure the text colours used in TortoiseGit's dialogs the way you like them."
8548 #: ../source/TortoiseGit_en.xml:10848
8549 msgid "Possible or real conflict / obstructed"
8553 #: ../source/TortoiseGit_en.xml:10850
8554 msgid "A conflict has occurred during update, or may occur during merge. Update is obstructed by an existing unversioned file/folder of the same name as a versioned one."
8558 #: ../source/TortoiseGit_en.xml:10855
8559 msgid "This colour is also used for error messages in the progress dialogs."
8563 #: ../source/TortoiseGit_en.xml:10861
8568 #: ../source/TortoiseGit_en.xml:10863
8569 msgid "Items added to the repository."
8573 #: ../source/TortoiseGit_en.xml:10869
8574 msgid "Missing / deleted / replaced"
8578 #: ../source/TortoiseGit_en.xml:10871
8579 msgid "Items deleted from the repository, missing from the working copy, or deleted from the working copy and replaced with another file of the same name."
8583 #: ../source/TortoiseGit_en.xml:10879
8588 #: ../source/TortoiseGit_en.xml:10881
8589 msgid "Changes from the repository successfully merged into the WC without creating any conflicts."
8593 #: ../source/TortoiseGit_en.xml:10888
8594 msgid "Modified / copied"
8598 #: ../source/TortoiseGit_en.xml:10890
8599 msgid "Add with history, or paths copied in the repository. Also used in the log dialog for entries which include copied items."
8603 #: ../source/TortoiseGit_en.xml:10898
8604 msgid "Deleted node"
8608 #: ../source/TortoiseGit_en.xml:10900
8609 msgid "An item which has been deleted from the repository."
8613 #: ../source/TortoiseGit_en.xml:10906
8618 #: ../source/TortoiseGit_en.xml:10908
8619 msgid "An item which has been added to the repository, by an add, copy or move operation."
8623 #: ../source/TortoiseGit_en.xml:10915
8624 msgid "Renamed node"
8628 #: ../source/TortoiseGit_en.xml:10917
8629 msgid "An item which has been renamed within the repository."
8633 #: ../source/TortoiseGit_en.xml:10923
8634 msgid "Replaced node"
8638 #: ../source/TortoiseGit_en.xml:10925
8639 msgid "The original item has been deleted and a new item with the same name replaces it."
8643 #: ../source/TortoiseGit_en.xml:10935
8644 msgid "Icon Overlay Settings"
8648 #: ../source/TortoiseGit_en.xml:10939
8649 msgid "The Settings Dialog, Icon Overlays Page"
8653 #: ../source/TortoiseGit_en.xml:10937
8654 msgid "<placeholder-1/> This page allows you to choose the items for which TortoiseGit will display icon overlays."
8658 #: ../source/TortoiseGit_en.xml:10945
8659 msgid "By default, overlay icons and context menus will appear in all open/save dialogs as well as in Windows Explorer. If you want them to appear <emphasis>only</emphasis> in Windows Explorer, check the <guilabel>Show overlays and context menu only in explorer</guilabel> box."
8663 #: ../source/TortoiseGit_en.xml:10951
8664 msgid "Ignored items and Unversioned items are not usually given an overlay. If you want to show an overlay in these cases, just check the boxes."
8668 #: ../source/TortoiseGit_en.xml:10955
8669 msgid "You can also choose to mark folders as modified if they contain unversioned items. This could be useful for reminding you that you have created new files which are not yet versioned. This option is only available when you use the <emphasis>default</emphasis> status cache option (see below)."
8673 #: ../source/TortoiseGit_en.xml:10970
8678 #: ../source/TortoiseGit_en.xml:10972
8679 msgid "Caches all status information in a separate process (<filename>TSVNCache.exe</filename>). That process watches all drives for changes and fetches the status again if files inside a working copy get modified. The process runs with the least possible priority so other programs don't get hogged because of it. That also means that the status information is not <emphasis>real time</emphasis> but it can take a few seconds for the overlays to change."
8683 #: ../source/TortoiseGit_en.xml:10983
8684 msgid "Advantage: the overlays show the status recursively, i.e. if a file deep inside a working copy is modified, all folders up to the working copy root will also show the modified overlay. And since the process can send notifications to the shell, the overlays on the left tree view usually change too."
8688 #: ../source/TortoiseGit_en.xml:10991
8689 msgid "Disadvantage: the process runs constantly, even if you're not working on your projects. It also uses around 10-50 MB of RAM depending on number and size of your working copies."
8693 #: ../source/TortoiseGit_en.xml:10999
8698 #: ../source/TortoiseGit_en.xml:11001
8699 msgid "Caching is done directly inside the shell extension dll, but only for the currently visible folder. Each time you navigate to another folder, the status information is fetched again."
8703 #: ../source/TortoiseGit_en.xml:11007
8704 msgid "Advantage: needs only very little memory (around 1 MB of RAM) and can show the status in <emphasis>real time</emphasis>."
8708 #: ../source/TortoiseGit_en.xml:11011
8709 msgid "Disadvantage: Since only one folder is cached, the overlays don't show the status recursively. For big working copies, it can take more time to show a folder in explorer than with the default cache. Also the mime-type column is not available."
8713 #: ../source/TortoiseGit_en.xml:11021
8718 #: ../source/TortoiseGit_en.xml:11023
8719 msgid "With this setting, the TortoiseGit does not fetch the status at all in Explorer. Because of that, files don't get an overlay and folders only get a 'normal' overlay if they're versioned. No other overlays are shown, and no extra columns are available either."
8723 #: ../source/TortoiseGit_en.xml:11030
8724 msgid "Advantage: uses absolutely no additional memory and does not slow down the Explorer at all while browsing."
8728 #: ../source/TortoiseGit_en.xml:11034
8729 msgid "Disadvantage: Status information of files and folders is not shown in Explorer. To see if your working copies are modified, you have to use the <quote>Check for modifications</quote> dialog."
8733 #: ../source/TortoiseGit_en.xml:10962
8734 msgid "Since it takes quite a while to fetch the status of a working copy, TortoiseGit uses a cache to store the status so the explorer doesn't get hogged too much when showing the overlays. You can choose which type of cache TortoiseGit should use according to your system and working copy size here: <placeholder-1/>"
8738 #: ../source/TortoiseGit_en.xml:11043
8739 msgid "The next group allows you to select which classes of storage should show overlays. By default, only hard drives are selected. You can even disable all icon overlays, but where's the fun in that?"
8743 #: ../source/TortoiseGit_en.xml:11048
8744 msgid "Network drives can be very slow, so by default icons are not shown for working copies located on network shares."
8748 #: ../source/TortoiseGit_en.xml:11052
8749 msgid "USB Flash drives appear to be a special case in that the drive type is identified by the device itself. Some appear as fixed drives, and some as removable drives."
8753 #: ../source/TortoiseGit_en.xml:11057
8754 msgid "The <guilabel>Exclude Paths</guilabel> are used to tell TortoiseGit those paths for which it should <emphasis>not</emphasis> show icon overlays and status columns. This is useful if you have some very big working copies containing only libraries which you won't change at all and therefore don't need the overlays. For example:"
8758 #: ../source/TortoiseGit_en.xml:11065
8759 msgid "<filename>f:\\development\\SVN\\Git</filename> will disable the overlays <emphasis>only</emphasis> on that specific folder. You still can see the overlays on all files and folder inside that folder."
8763 #: ../source/TortoiseGit_en.xml:11070
8764 msgid "<filename>f:\\development\\SVN\\Git*</filename> will disable the overlays on <emphasis>all</emphasis> files and folders whose path starts with <filename>f:\\development\\SVN\\Git</filename>. That means you won't see overlays for any files and folders below that path."
8768 #: ../source/TortoiseGit_en.xml:11077
8769 msgid "The same applies to the <guilabel>Include Paths</guilabel>. Except that for those paths the overlays are shown even if the overlays are disabled for that specific drive type, or by an exclude path specified above."
8773 #: ../source/TortoiseGit_en.xml:11082
8775 "Users sometimes ask how these three settings interact, and the definitive answer is: <screen>\n"
8776 "if (path is in include list)\n"
8778 "if (path is allowed drive type) AND (path is not in exclude list)\n"
8780 "</screen> The include list <emphasis>always</emphasis> makes the overlays show. Otherwise, overlays are shown for all marked drive types <emphasis>unless</emphasis> the path is excluded."
8784 #: ../source/TortoiseGit_en.xml:11095
8785 msgid "TSVNCache.exe also uses these paths to restrict its scanning. If you want it to look only in particular folders, disable all drive types and include only the folders you specifically want to be scanned."
8789 #: ../source/TortoiseGit_en.xml:11101
8790 msgid "Exclude <literal>SUBST</literal> Drives"
8794 #: ../source/TortoiseGit_en.xml:11103
8795 msgid "SUBST drives"
8799 #: ../source/TortoiseGit_en.xml:11105
8801 "It is often convenient to use a <literal>SUBST</literal> drive to access your working copies, e.g. using the command <screen>\n"
8802 "subst T: C:\\TortoiseGit\\trunk\\doc\n"
8803 "</screen> However this can cause the overlays not to update, as <literal>TSVNCache</literal> will only receive one notification when a file changes, and that is normally for the original path. This means that your overlays on the <literal>subst</literal> path may never be updated."
8807 #: ../source/TortoiseGit_en.xml:11117
8808 msgid "An easy way to work around this is to exclude the original path from showing overlays, so that the overlays show up on the <literal>subst</literal> path instead."
8812 #: ../source/TortoiseGit_en.xml:11123
8813 msgid "Sometimes you will exclude areas that contain working copies, which saves TSVNCache from scanning and monitoring for changes, but you still want a visual indication that such folders are versioned. The <guilabel>Show excluded folders as 'normal'</guilabel> checkbox allows you to do this. With this option, versioned folders in any excluded area (drive type not checked, or specifically excluded) will show up as normal and up-to-date, with a green check mark. This reminds you that you are looking at a working copy, even though the folder overlays may not be correct. Files do not get an overlay at all. Note that the context menus still work, even though the overlays are not shown."
8817 #: ../source/TortoiseGit_en.xml:11136
8818 msgid "As a special exception to this, drives <literal>A:</literal> and <literal>B:</literal> are never considered for the <guilabel>Show excluded folders as 'normal'</guilabel> option. This is because Windows is forced to look on the drive, which can result in a delay of several seconds when starting Explorer, even if your PC does have a floppy drive."
8822 #: ../source/TortoiseGit_en.xml:11145
8823 msgid "Icon Set Selection"
8827 #: ../source/TortoiseGit_en.xml:11149
8828 msgid "The Settings Dialog, Icon Set Page"
8832 #: ../source/TortoiseGit_en.xml:11147
8833 msgid "<placeholder-1/> You can change the overlay icon set to the one you like best. Note that if you change overlay set, you may have to restart your computer for the changes to take effect."
8837 #: ../source/TortoiseGit_en.xml:11160
8838 msgid "Network Settings"
8842 #: ../source/TortoiseGit_en.xml:11162
8843 msgid "proxy server"
8847 #: ../source/TortoiseGit_en.xml:11166
8848 msgid "The Settings Dialog, Network Page"
8852 #: ../source/TortoiseGit_en.xml:11164
8853 msgid "<placeholder-1/> Here you can configure your proxy server, if you need one to get through your company's firewall."
8857 #: ../source/TortoiseGit_en.xml:11172
8858 msgid "If you need to set up per-repository proxy settings, you will need to use the Git <filename>servers</filename> file to configure this. Use <guibutton>Edit</guibutton> to get there directly. Consult the <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.advanced.confarea.html\"><citetitle>Runtime Configuration Area</citetitle></ulink> for details on how to use this file."
8862 #: ../source/TortoiseGit_en.xml:11182
8863 msgid "You can also specify which program TortoiseGit should use to establish a secure connection to a svn+ssh repository. We recommend that you use TortoisePlink.exe. This is a version of the popular Plink program, and is included with TortoiseGit, but it is compiled as a Windowless app, so you don't get a DOS box popping up every time you authenticate."
8867 #: ../source/TortoiseGit_en.xml:11190
8868 msgid "You must specify the full path to the executable. For TortoisePlink.exe this is the standard TortoiseGit bin directory. Use the <guibutton>Browse</guibutton> button to help locate it."
8872 #: ../source/TortoiseGit_en.xml:11195
8873 msgid "One side-effect of not having a window is that there is nowhere for any error messages to go, so if authentication fails you will simply get a message saying something like <quote>Unable to write to standard output</quote>. For this reason we recommend that you first set up using standard Plink. When everything is working, you can use TortoisePlink with exactly the same parameters."
8877 #: ../source/TortoiseGit_en.xml:11204
8878 msgid "TortoisePlink does not have any documentation of its own because it is just a minor variant of Plink. Find out about command line parameters from the <ulink url=\"http://www.chiark.greenend.org.uk/~sgtatham/putty/\"><citetitle>PuTTY website</citetitle></ulink>"
8882 #: ../source/TortoiseGit_en.xml:11212
8883 msgid "To avoid being prompted for a password repeatedly, you might also consider using a password caching tool such as Pageant. This is also available for download from the PuTTY website."
8887 #: ../source/TortoiseGit_en.xml:11217
8888 msgid "Finally, setting up SSH on server and clients is a non-trivial process which is beyond the scope of this help file. However, you can find a guide in the TortoiseGit FAQ listed under <ulink url=\"http://TortoiseGit.net/ssh_howto\"><citetitle>Git/TortoiseGit SSH How-To</citetitle></ulink>."
8892 #: ../source/TortoiseGit_en.xml:11227
8893 msgid "External Program Settings"
8897 #: ../source/TortoiseGit_en.xml:11230
8898 msgid "The Settings Dialog, Diff Viewer Page"
8902 #: ../source/TortoiseGit_en.xml:11228
8903 msgid "<placeholder-1/> Here you can define your own diff/merge programs that TortoiseGit should use. The default setting is to use TortoiseMerge which is installed alongside TortoiseGit."
8907 #: ../source/TortoiseGit_en.xml:11238
8908 msgid "Read <xref linkend=\"tsvn-dug-diff-tools\"/> for a list of some of the external diff/merge programs that people are using with TortoiseGit."
8912 #: ../source/TortoiseGit_en.xml:11243
8917 #: ../source/TortoiseGit_en.xml:11258
8918 msgid "The original file without your changes"
8923 #: ../source/TortoiseGit_en.xml:11266
8924 #: ../source/TortoiseGit_en.xml:11374
8925 msgid "The window title for the base file"
8929 #: ../source/TortoiseGit_en.xml:11274
8930 msgid "Your own file, with your changes"
8935 #: ../source/TortoiseGit_en.xml:11282
8936 #: ../source/TortoiseGit_en.xml:11390
8937 msgid "The window title for your file"
8941 #: ../source/TortoiseGit_en.xml:11245
8942 msgid "An external diff program may be used for comparing different revisions of files. The external program will need to obtain the filenames from the command line, along with any other command line options. TortoiseGit uses substitution parameters prefixed with <literal>%</literal>. When it encounters one of these it will substitute the appropriate value. The order of the parameters will depend on the Diff program you use. <placeholder-1/>"
8946 #: ../source/TortoiseGit_en.xml:11289
8947 msgid "The window titles are not pure filenames. TortoiseGit treats that as a name to display and creates the names accordingly. So e.g. if you're doing a diff from a file in revision 123 with a file in your working copy, the names will be <filename>filename : revision 123</filename> and <filename>filename : working copy</filename>"
8951 #: ../source/TortoiseGit_en.xml:11299
8953 "For example, with ExamDiff Pro: <screen>\n"
8954 "C:\\Path-To\\ExamDiff.exe %base %mine\n"
8955 "</screen> or with KDiff3: <screen>\n"
8956 "C:\\Path-To\\kdiff3.exe %base %mine --L1 %bname --L2 %yname\n"
8957 "</screen> or with WinMerge: <screen>\n"
8958 "C:\\Path-To\\WinMerge.exe -e -ub -dl %bname -dr %yname %base %mine\n"
8959 "</screen> or with Araxis: <screen>\n"
8960 "C:\\Path-To\\compare.exe /max /wait /title1:%bname /title2:%yname\n"
8966 #: ../source/TortoiseGit_en.xml:11318
8967 msgid "If you use the <literal>svn:keywords</literal> property to expand keywords, and in particular the <emphasis>revision</emphasis> of a file, then there may be a difference between files which is purely due to the current value of the keyword. Also if you use <literal>svn:eol-style = native</literal> the BASE file will have pure <literal>LF</literal> line endings whereas your file will have <literal>CR-LF</literal> line endings. TortoiseGit will normally hide these differences automatically by first parsing the BASE file to expand keywords and line endings before doing the diff operation. However, this can take a long time with large files. If <guilabel>Convert files when diffing against BASE</guilabel> is unchecked then TortoiseGit will skip pre-processing the files."
8971 #: ../source/TortoiseGit_en.xml:11332
8972 msgid "You can also specify a different diff tool to use on Git properties. Since these tend to be short simple text strings, you may want to use a simpler more compact viewer."
8976 #: ../source/TortoiseGit_en.xml:11337
8977 msgid "If you have configured an alternate diff tool, you can access TortoiseMerge <emphasis>and</emphasis> the third party tool from the context menus. <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Diff</guimenuitem></menuchoice> uses the primary diff tool, and <keycap>Shift</keycap>+ <menuchoice><guimenu>Context menu</guimenu><guimenuitem>Diff</guimenuitem></menuchoice> uses the secondary diff tool."
8981 #: ../source/TortoiseGit_en.xml:11355
8986 #: ../source/TortoiseGit_en.xml:11365
8987 msgid "the original file without your or the others changes"
8991 #: ../source/TortoiseGit_en.xml:11382
8992 msgid "your own file, with your changes"
8996 #: ../source/TortoiseGit_en.xml:11398
8997 msgid "the file as it is in the repository"
9001 #: ../source/TortoiseGit_en.xml:11406
9002 msgid "The window title for the file in the repository"
9006 #: ../source/TortoiseGit_en.xml:11414
9007 msgid "the conflicted file, the result of the merge operation"
9011 #: ../source/TortoiseGit_en.xml:11423
9012 msgid "The window title for the merged file"
9016 #: ../source/TortoiseGit_en.xml:11357
9017 msgid "An external merge program used to resolve conflicted files. Parameter substitution is used in the same way as with the Diff Program. <placeholder-1/>"
9021 #: ../source/TortoiseGit_en.xml:11430
9023 "For example, with Perforce Merge: <screen>\n"
9024 "C:\\Path-To\\P4Merge.exe %base %theirs %mine %merged\n"
9025 "</screen> or with KDiff3: <screen>\n"
9026 "C:\\Path-To\\kdiff3.exe %base %mine %theirs -o %merged\n"
9027 " --L1 %bname --L2 %yname --L3 %tname\n"
9028 "</screen> or with Araxis: <screen>\n"
9029 "C:\\Path-To\\compare.exe /max /wait /3 /title1:%tname /title2:%bname\n"
9030 " /title3:%yname %theirs %base %mine %merged /a2\n"
9031 "</screen> or with WinMerge (2.8 or later): <screen>\n"
9032 "C:\\Path-To\\WinMerge.exe %merged\n"
9037 #: ../source/TortoiseGit_en.xml:11452
9038 msgid "Diff/Merge Advanced Settings"
9042 #: ../source/TortoiseGit_en.xml:11456
9043 msgid "The Settings Dialog, Diff/Merge Advanced Dialog"
9047 #: ../source/TortoiseGit_en.xml:11454
9048 msgid "<placeholder-1/> In the advanced settings, you can define a different diff and merge program for every file extension. For instance you could associate Photoshop as the <quote>Diff</quote> Program for <filename>.jpg</filename> files :-) You can also associate the <literal>svn:mime-type</literal> property with a diff or merge program."
9052 #: ../source/TortoiseGit_en.xml:11465
9053 msgid "To associate using a file extension, you need to specify the extension. Use <literal>.bmp</literal> to describe Windows bitmap files. To associate using the <literal>svn:mime-type</literal> property, specify the mime type, including a slash, for example <literal>text/xml</literal>."
9057 #: ../source/TortoiseGit_en.xml:11474
9058 msgid "Unified Diff Viewer"
9062 #: ../source/TortoiseGit_en.xml:11476
9063 msgid "A viewer program for unified-diff files (patch files). No parameters are required. The <guilabel>Default</guilabel> option is to check for a file association for <filename>.diff</filename> files, and then for <filename>.txt</filename> files. If you don't have a viewer for <filename>.diff</filename> files, you will most likely get NotePad."
9067 #: ../source/TortoiseGit_en.xml:11485
9068 msgid "The original Windows NotePad program does not behave well on files which do not have standard CR-LF line-endings. Since most unified diff files have pure LF line-endings, they do not view well in NotePad. However, you can download a free NotePad replacement <ulink url=\"http://www.flos-freeware.ch/notepad2.html\"><citetitle>Notepad2</citetitle></ulink> which not only displays the line-endings correctly, but also colour codes the added and removed lines."
9072 #: ../source/TortoiseGit_en.xml:11501
9073 msgid "Saved Data Settings"
9077 #: ../source/TortoiseGit_en.xml:11504
9078 msgid "The Settings Dialog, Saved Data Page"
9082 #: ../source/TortoiseGit_en.xml:11502
9083 msgid "<placeholder-1/> For your convenience, TortoiseGit saves many of the settings you use, and remembers where you have been lately. If you want to clear out that cache of data, you can do it here."
9087 #: ../source/TortoiseGit_en.xml:11513
9092 #: ../source/TortoiseGit_en.xml:11515
9093 msgid "Whenever you checkout a working copy, merge changes or use the repository browser, TortoiseGit keeps a record of recently used URLs and offers them in a combo box. Sometimes that list gets cluttered with outdated URLs so it is useful to flush it out periodically."
9097 #: ../source/TortoiseGit_en.xml:11522
9098 msgid "If you want to remove a single item from one of the combo boxes you can do that in-place. Just click on the arrow to drop the combo box down, move the mouse over the item you want to remove and type <keycap>Shift+Del</keycap>."
9102 #: ../source/TortoiseGit_en.xml:11531
9103 msgid "Log messages (Input dialog)"
9107 #: ../source/TortoiseGit_en.xml:11533
9108 msgid "TortoiseGit stores recent commit log messages that you enter. These are stored per repository, so if you access many repositories this list can grow quite large."
9112 #: ../source/TortoiseGit_en.xml:11541
9113 msgid "Log messages (Show log dialog)"
9117 #: ../source/TortoiseGit_en.xml:11543
9118 msgid "TortoiseGit caches log messages fetched by the Show Log dialog to save time when you next show the log. If someone else edits a log message and you already have that message cached, you will not see the change until you clear the cache. Log message caching is enabled on the <guilabel>Dialogs 1</guilabel> tab."
9122 #: ../source/TortoiseGit_en.xml:11554
9123 msgid "Dialog sizes and positions"
9127 #: ../source/TortoiseGit_en.xml:11556
9128 msgid "Many dialogs remember the size and screen position that you last used."
9132 #: ../source/TortoiseGit_en.xml:11563
9133 msgid "Authentication data"
9137 #: ../source/TortoiseGit_en.xml:11565
9138 msgid "When you authenticate with a Git server, the username and password are cached locally so you don't have to keep entering them. You may want to clear this for security reasons, or because you want to access the repository under a different username ... does John know you are using his PC?"
9142 #: ../source/TortoiseGit_en.xml:11572
9143 msgid "If you want to clear authentication data for one particular server only, read <xref linkend=\"tsvn-dug-general-auth\"/> for instructions on how to find the cached data."
9147 #: ../source/TortoiseGit_en.xml:11580
9152 #: ../source/TortoiseGit_en.xml:11582
9153 msgid "TortoiseGit keeps a log of everything written to its progress dialogs. This can be useful when, for example, you want to check what happened in a recent update command."
9157 #: ../source/TortoiseGit_en.xml:11587
9158 msgid "The log file is limited in length and when it grows too big the oldest content is discarded. By default 4000 lines are kept, but you can customize that number."
9162 #: ../source/TortoiseGit_en.xml:11592
9163 msgid "From here you can view the log file content, and also clear it."
9167 #: ../source/TortoiseGit_en.xml:11601
9172 #: ../source/TortoiseGit_en.xml:11603
9177 #: ../source/TortoiseGit_en.xml:11607
9178 msgid "The Settings Dialog, Log Cache Page"
9182 #: ../source/TortoiseGit_en.xml:11605
9183 msgid "<placeholder-1/> This dialog allows you to configure the log caching feature of TortoiseGit, which retains a local copy of log messages and changed paths to avoid time-consuming downloads from the server. Using the log cache can dramatically speed up the log dialog and the revision graph. Another useful feature is that the log messages can still be accessed when offline."
9187 #: ../source/TortoiseGit_en.xml:11620
9188 msgid "Enable log caching"
9192 #: ../source/TortoiseGit_en.xml:11622
9193 msgid "Enables log caching whenever log data is requested. If checked, data will be retrieved from the cache when available, and any messages not in the cache will be retrieved from the server and added to the cache."
9197 #: ../source/TortoiseGit_en.xml:11628
9198 msgid "If caching is disabled, data will always be retrieved directly from the server and not stored locally."
9202 #: ../source/TortoiseGit_en.xml:11635
9203 msgid "If the repository cannot be contacted"
9207 #: ../source/TortoiseGit_en.xml:11637
9208 msgid "If you are working offline, or if the repository server is down, the log cache can still be used to supply log messages already held in the cache. Of course the cache may not be up-to-date, so there are options to allow you to select whether this feature should be used."
9212 #: ../source/TortoiseGit_en.xml:11644
9213 msgid "When log data is being taken from the cache without contacting the server, the dialog using those message will show the offline state in its title bar."
9217 #: ../source/TortoiseGit_en.xml:11652
9218 msgid "Timeout before updating the HEAD revision"
9222 #: ../source/TortoiseGit_en.xml:11654
9223 msgid "When you invoke the log dialog you will normally want to contact the server to check for any newer log messages. If the timeout set here is non-zero then the server will only be contacted when the timeout has elapsed since the last time contact. This can reduce server round-trips if you open the log dialog frequently and the server is slow, but the data shown may not be completely up-to-date. If you want to use this feature we suggest using a value of 300 (5 minutes) as a compromise."
9227 #: ../source/TortoiseGit_en.xml:11669
9228 msgid "Below the settings you can see a list of the repositories that are cached locally, and the space used for the cache. If you select one of the repositories you can then use the buttons underneath."
9232 #: ../source/TortoiseGit_en.xml:11676
9233 msgid "Log Cache Statistics"
9237 #: ../source/TortoiseGit_en.xml:11679
9238 msgid "The Settings Dialog, Log Cache Statistics"
9242 #: ../source/TortoiseGit_en.xml:11688
9247 #: ../source/TortoiseGit_en.xml:11690
9248 msgid "The amount of memory required to service this cache."
9252 #: ../source/TortoiseGit_en.xml:11696
9257 #: ../source/TortoiseGit_en.xml:11698
9258 msgid "The amount of disk space used for the cache. Data is compressed, so disk usage is generally fairly modest."
9262 #: ../source/TortoiseGit_en.xml:11705
9267 #: ../source/TortoiseGit_en.xml:11707
9268 msgid "Shows whether the repository was available last time the cache was used."
9272 #: ../source/TortoiseGit_en.xml:11714
9277 #: ../source/TortoiseGit_en.xml:11716
9278 msgid "The last time the cache content was changed."
9282 #: ../source/TortoiseGit_en.xml:11722
9283 msgid "Last head update"
9287 #: ../source/TortoiseGit_en.xml:11724
9288 msgid "The last time we requested the HEAD revision from the server."
9292 #: ../source/TortoiseGit_en.xml:11731
9297 #: ../source/TortoiseGit_en.xml:11733
9298 msgid "The number of different authors with messages recorded in the cache."
9302 #: ../source/TortoiseGit_en.xml:11740
9307 #: ../source/TortoiseGit_en.xml:11742
9308 msgid "The number of paths listed, as you would see using <literal>svn log -v</literal>."
9312 #: ../source/TortoiseGit_en.xml:11749
9317 #: ../source/TortoiseGit_en.xml:11751
9318 msgid "The number of revision ranges which we have not fetched, simply because they haven't been requested. This is a measure of the number of holes in the cache."
9322 #: ../source/TortoiseGit_en.xml:11759
9323 msgid "Max revision"
9327 #: ../source/TortoiseGit_en.xml:11761
9328 msgid "The highest revision number stored in the cache."
9332 #: ../source/TortoiseGit_en.xml:11767
9333 msgid "Revision count"
9337 #: ../source/TortoiseGit_en.xml:11769
9338 msgid "The number of revisions stored in the cache. This is another measure of cache completeness."
9342 #: ../source/TortoiseGit_en.xml:11677
9343 msgid "<placeholder-1/> Click on the <guibutton>Details</guibutton> button to see detailed statistics for a particular cache. Many of the fields shown here are mainly of interest to the developers of TortoiseGit, so they are not all described in detail. <placeholder-2/>"
9347 #: ../source/TortoiseGit_en.xml:11778
9348 msgid "Click on the <guibutton>Update</guibutton> to completely refresh the cache and fill in any holes. For a large repository this could be very time consuming, but useful if you are about to go offline and want the best available cache."
9352 #: ../source/TortoiseGit_en.xml:11784
9353 msgid "Click on the <guibutton>Export</guibutton> button to export the entire cache as a set of CSV files. This could be useful if you want to process the log data using an external program, although it is mainly useful to the developers."
9357 #: ../source/TortoiseGit_en.xml:11790
9358 msgid "Click on <guibutton>Delete</guibutton> to remove all cached data for the selected repositories. This does not disable caching for the repository so the next time you request log data, a new cache will be created."
9362 #: ../source/TortoiseGit_en.xml:11797
9363 msgid "Client Side Hook Scripts"
9367 #: ../source/TortoiseGit_en.xml:11801
9368 msgid "client hooks"
9372 #: ../source/TortoiseGit_en.xml:11808
9373 msgid "The Settings Dialog, Hook Scripts Page"
9377 #: ../source/TortoiseGit_en.xml:11806
9378 msgid "<placeholder-1/> This dialog allows you to set up hook scripts which will be executed automatically when certain Git actions are performed. As opposed to the hook scripts explained in <xref linkend=\"tsvn-repository-hooks\"/>, these scripts are executed locally on the client."
9382 #: ../source/TortoiseGit_en.xml:11816
9383 msgid "One application for such hooks might be to call a program like <literal>SubWCRev.exe</literal> to update version numbers after a commit, and perhaps to trigger a rebuild."
9387 #: ../source/TortoiseGit_en.xml:11821
9388 msgid "For various security and implementation reasons, hook scripts are defined locally on a machine, rather than as project properties. You define what happens, no matter what someone else commits to the repository. Of course you can always choose to call a script which is itself under version control."
9392 #: ../source/TortoiseGit_en.xml:11829
9393 msgid "The Settings Dialog, Configure Hook Scripts"
9397 #: ../source/TortoiseGit_en.xml:11827
9398 msgid "<placeholder-1/> To add a new hook script, simply click <guibutton>Add</guibutton> and fill in the details."
9403 #: ../source/TortoiseGit_en.xml:11839
9404 #: ../source/TortoiseGit_en.xml:11909
9405 msgid "Start-commit"
9409 #: ../source/TortoiseGit_en.xml:11841
9410 msgid "Called before the commit dialog is shown. You might want to use this if the hook modifies a versioned file and affects the list of files that need to be committed and/or commit message."
9415 #: ../source/TortoiseGit_en.xml:11850
9416 #: ../source/TortoiseGit_en.xml:11913
9421 #: ../source/TortoiseGit_en.xml:11852
9422 msgid "Called after the user clicks <guibutton>OK</guibutton> in the commit dialog, and before the actual commit begins."
9427 #: ../source/TortoiseGit_en.xml:11859
9428 #: ../source/TortoiseGit_en.xml:11917
9433 #: ../source/TortoiseGit_en.xml:11861
9434 msgid "Called after the commit finishes (whether successful or not)."
9439 #: ../source/TortoiseGit_en.xml:11867
9440 #: ../source/TortoiseGit_en.xml:11921
9441 msgid "Start-update"
9445 #: ../source/TortoiseGit_en.xml:11869
9446 msgid "Called before the update-to-revision dialog is shown."
9451 #: ../source/TortoiseGit_en.xml:11875
9452 #: ../source/TortoiseGit_en.xml:11925
9457 #: ../source/TortoiseGit_en.xml:11877
9458 msgid "Called before the actual Git update begins."
9463 #: ../source/TortoiseGit_en.xml:11883
9464 #: ../source/TortoiseGit_en.xml:11929
9469 #: ../source/TortoiseGit_en.xml:11885
9470 msgid "Called after the update finishes (whether successful or not)."
9474 #: ../source/TortoiseGit_en.xml:11835
9475 msgid "There are currently six types of hook script available <placeholder-1/>"
9479 #: ../source/TortoiseGit_en.xml:11892
9480 msgid "A hook is defined for a particular working copy path. You only need to specify the top level path; if you perform an operation in a sub-folder, TortoiseGit will automatically search upwards for a matching path."
9484 #: ../source/TortoiseGit_en.xml:11897
9485 msgid "Next you must specify the command line to execute, starting with the path to the hook script or executable. This could be a batch file, an executable file or any other file which has a valid windows file association, eg. a perl script."
9489 #: ../source/TortoiseGit_en.xml:11903
9490 msgid "The command line includes several parameters which get filled in by TortoiseGit. The parameters available depend upon which hook is called. Each hook has its own parameters which are passed in the following order: <placeholder-1/>"
9494 #: ../source/TortoiseGit_en.xml:11940
9495 msgid "A path to a temporary file which contains all the paths for which the operation was started. Each path is on a separate line in the temp file."
9499 #: ../source/TortoiseGit_en.xml:11950
9500 msgid "The depth with which the commit/update is done."
9504 #: ../source/TortoiseGit_en.xml:11960
9505 msgid "svn_depth_unknown"
9509 #: ../source/TortoiseGit_en.xml:11968
9510 msgid "svn_depth_exclude"
9514 #: ../source/TortoiseGit_en.xml:11976
9515 msgid "svn_depth_empty"
9519 #: ../source/TortoiseGit_en.xml:11984
9520 msgid "svn_depth_files"
9524 #: ../source/TortoiseGit_en.xml:11992
9525 msgid "svn_depth_immediates"
9529 #: ../source/TortoiseGit_en.xml:12000
9530 msgid "svn_depth_infinity"
9534 #: ../source/TortoiseGit_en.xml:11953
9535 msgid "Possible values are: <placeholder-1/>"
9539 #: ../source/TortoiseGit_en.xml:12011
9540 msgid "Path to a file containing the log message for the commit. The file contains the text in UTF-8 encoding. After successful execution of the start-commit hook, the log message is read back, giving the hook a chance to modify it."
9544 #: ../source/TortoiseGit_en.xml:12023
9545 msgid "The repository revision to which the update should be done or after a commit completes."
9549 #: ../source/TortoiseGit_en.xml:12032
9550 msgid "Path to a file containing the error message. If there was no error, the file will be empty."
9554 #: ../source/TortoiseGit_en.xml:12041
9555 msgid "The current working directory with which the script is run. This is set to the common root directory of all affected paths."
9559 #: ../source/TortoiseGit_en.xml:11934
9560 msgid "The meaning of each of these parameters is described here: <placeholder-1/>"
9564 #: ../source/TortoiseGit_en.xml:12049
9565 msgid "If you want the Git operation to hold off until the hook has completed, check <guilabel>Wait for the script to finish</guilabel>."
9569 #: ../source/TortoiseGit_en.xml:12053
9570 msgid "Normally you will want to hide ugly DOS boxes when the script runs, so <guilabel>Hide the script while running</guilabel> is checked by default."
9574 #: ../source/TortoiseGit_en.xml:12058
9575 msgid "Issue Tracker Integration"
9579 #: ../source/TortoiseGit_en.xml:12061
9580 msgid "TortoiseGit can use a COM plugin to query issue trackers when in the commit dialog. The use of such plugins is described in <xref linkend=\"tsvn-dug-bugtracker-ref\"/>. If your system administrator has provided you with a plugin, which you have already installed and registered, this is the place to specify how it integrates with your working copy."
9584 #: ../source/TortoiseGit_en.xml:12071
9585 msgid "The Settings Dialog, Issue Tracker Integration Page"
9589 #: ../source/TortoiseGit_en.xml:12069
9590 msgid "<placeholder-1/> Click on <guibutton>Add...</guibutton> to use the plugin with a particular working copy. Here you can specify the working copy path, choose which plugin to use from a drop down list of all registered issue tracker plugins, and any parameters to pass. The parameters will be specific to the plugin, but might include your user name on the issue tracker so that the plugin can query for issues which are assigned to you."
9594 #: ../source/TortoiseGit_en.xml:12086
9595 msgid "TortoiseBlame Settings"
9599 #: ../source/TortoiseGit_en.xml:12089
9600 msgid "The Settings Dialog, TortoiseBlame Page"
9604 #: ../source/TortoiseGit_en.xml:12087
9605 msgid "<placeholder-1/> The settings used by TortoiseBlame are controlled from the main context menu, not directly with TortoiseBlame itself."
9609 #: ../source/TortoiseGit_en.xml:12097
9614 #: ../source/TortoiseGit_en.xml:12099
9615 msgid "TortoiseBlame can use the background colour to indicate the age of lines in a file. You set the endpoints by specifying the colours for the newest and oldest revisions, and TortoiseBlame uses a linear interpolation between these colours according to the repository revision indicated for each line."
9619 #: ../source/TortoiseGit_en.xml:12109
9624 #: ../source/TortoiseGit_en.xml:12111
9625 msgid "You can select the font used to display the text, and the point size to use. This applies both to the file content, and to the author and revision information shown in the left pane."
9629 #: ../source/TortoiseGit_en.xml:12119
9634 #: ../source/TortoiseGit_en.xml:12121
9635 msgid "Defines how many spaces to use for expansion when a tab character is found in the file content."
9639 #: ../source/TortoiseGit_en.xml:12130
9640 msgid "Registry Settings"
9644 #: ../source/TortoiseGit_en.xml:12132
9649 #: ../source/TortoiseGit_en.xml:12134
9650 msgid "A few infrequently used settings are available only by editing the registry directly."
9654 #: ../source/TortoiseGit_en.xml:12142
9655 msgid "You can specify a different location for the Git configuration file using registry location <literal>HKCU\\Software\\TortoiseGit\\ConfigDir</literal>. This will affect all TortoiseGit operations."
9659 #: ../source/TortoiseGit_en.xml:12151
9660 msgid "Cache tray icon"
9664 #: ../source/TortoiseGit_en.xml:12153
9665 msgid "To add a cache tray icon for the TSVNCache program, create a <literal>DWORD</literal> key with a value of 1 at <literal>HKCU\\Software\\TortoiseGit\\CacheTrayIcon</literal>. This is really only useful for developers as it allows you to terminate the program gracefully."
9669 #: ../source/TortoiseGit_en.xml:12163
9670 msgid "Filenames without extensions in auto-completion list"
9674 #: ../source/TortoiseGit_en.xml:12165
9675 msgid "The auto-completion list shown in the commit message editor displays the names of files listed for commit. To also include these names with extensions removed, create a <literal>DWORD</literal> key with a value of 1 at <literal>HKCU\\Software\\TortoiseGit\\AutocompleteRemovesExtensions</literal>."
9679 #: ../source/TortoiseGit_en.xml:12175
9680 msgid "Explorer columns everywhere"
9684 #: ../source/TortoiseGit_en.xml:12177
9685 msgid "The extra columns the TortoiseGit adds to the details view in Windows Explorer are normally only active in a working copy. If you want those to be accessible everywhere, not just in working copies, create a <literal>DWORD</literal> key with a value of 1 at <literal>HKCU\\Software\\TortoiseGit\\ColumnsEveryWhere</literal>."
9689 #: ../source/TortoiseGit_en.xml:12188
9690 msgid "Merge log separator"
9694 #: ../source/TortoiseGit_en.xml:12190
9695 msgid "When you merge revisions from another branch, and merge tracking information is available, the log messages from the revisions you merge will be collected to make up a commit log message. A pre-defined string is used to separate the individual log messages of the merged revisions. If you prefer, you can create a <literal>SZ</literal> key at <literal>HKCU\\Software\\TortoiseGit\\MergeLogSeparator</literal> containing a separator string of your choice."
9699 #: ../source/TortoiseGit_en.xml:12203
9700 msgid "Always blame changes with TortoiseMerge"
9704 #: ../source/TortoiseGit_en.xml:12205
9705 msgid "TortoiseGit allows you to assign external diff viewer. Most such viewers, however, are not suited for change blaming (<xref linkend=\"tsvn-dug-blame-diffs\"/>), so you might wish to fall back to TortoiseMerge in this case. To do so, create a <literal>DWORD</literal> key with a value of 1 at <literal>HKCU\\Software\\TortoiseGit\\DiffBlamesWithTortoiseMerge</literal>."
9709 #: ../source/TortoiseGit_en.xml:12218
9710 msgid "Git Working Folders"
9714 #: ../source/TortoiseGit_en.xml:12220
9719 #: ../source/TortoiseGit_en.xml:12223
9724 #: ../source/TortoiseGit_en.xml:12225
9725 msgid "VS.NET 2003 when used with web projects can't handle the <literal>.svn</literal> folders that Git uses to store its internal information. This is not a bug in Git. The bug is in VS.NET 2003 and the frontpage extensions it uses."
9729 #: ../source/TortoiseGit_en.xml:12232
9730 msgid "Note that the bug is fixed in VS2005 and later versions."
9734 #: ../source/TortoiseGit_en.xml:12236
9735 msgid "As of Version 1.3.0 of Git and TortoiseGit, you can set the environment variable <literal>SVN_ASP_DOT_NET_HACK</literal>. If that variable is set, then Git will use <literal>_svn</literal> folders instead of <literal>.svn</literal> folders. You must restart your shell for that environment variable to take effect. Normally that means rebooting your PC. To make this easier, you can now do this from the general settings page using a simple checkbox - refer to <xref linkend=\"tsvn-dug-settings-main\"/>."
9739 #: ../source/TortoiseGit_en.xml:12246
9740 msgid "For more information, and other ways to avoid this problem in the first place, check out the article about this in our <ulink url=\"http://TortoiseGit.net/aspdotnethack\"><citetitle>FAQ</citetitle></ulink>."
9744 #: ../source/TortoiseGit_en.xml:12256
9749 #: ../source/TortoiseGit_en.xml:12262
9754 #: ../source/TortoiseGit_en.xml:12263
9755 msgid "Even though TortoiseGit and TortoiseMerge are free, you can support the developers by sending in patches and play an active role in the development. You can also help to cheer us up during the endless hours we spend in front of our computers."
9759 #: ../source/TortoiseGit_en.xml:12269
9760 msgid "While working on TortoiseGit we love to listen to music. And since we spend many hours on the project we need a <emphasis>lot</emphasis> of music. Therefore we have set up some wish-lists with our favourite music CDs and DVDs: <ulink url=\"http://TortoiseGit.tigris.org/donate.html\"><citetitle>http://TortoiseGit.tigris.org/donate.html</citetitle></ulink> Please also have a look at the list of people who contributed to the project by sending in patches or translations."
9764 #: ../source/TortoiseGit_en.xml:12283
9765 msgid "The SubWCRev Program"
9769 #: ../source/TortoiseGit_en.xml:12285
9770 msgid "version extraction"
9774 #: ../source/TortoiseGit_en.xml:12288
9779 #: ../source/TortoiseGit_en.xml:12291
9784 #: ../source/TortoiseGit_en.xml:12294
9785 msgid "version number in files"
9789 #: ../source/TortoiseGit_en.xml:12297
9790 msgid "SubWCRev is Windows console program which can be used to read the status of a Git working copy and optionally perform keyword substitution in a template file. This is often used as part of the build process as a means of incorporating working copy information into the object you are building. Typically it might be used to include the revision number in an <quote>About</quote> box."
9794 #: ../source/TortoiseGit_en.xml:12311
9795 msgid "The SubWCRev Command Line"
9799 #: ../source/TortoiseGit_en.xml:12312
9800 msgid "SubWCRev reads the Git status of all files in a working copy, excluding externals by default. It records the highest commit revision number found, and the commit timestamp of that revision, It also records whether there are local modifications in the working copy, or mixed update revisions. The revision number, update revision range and modification status are displayed on stdout."
9804 #: ../source/TortoiseGit_en.xml:12320
9806 "SubWCRev.exe is called from the command line or a script, and is controlled using the command line parameters. <screen>\n"
9807 "SubWCRev WorkingCopyPath [SrcVersionFile DstVersionFile] [-nmdfe]\n"
9812 #: ../source/TortoiseGit_en.xml:12327
9813 msgid "<literal>WorkingCopyPath</literal> is the path to the working copy being checked. You can only use SubWCRev on working copies, not directly on the repository. The path may be absolute or relative to the current working directory."
9817 #: ../source/TortoiseGit_en.xml:12333
9818 msgid "If you want SubWCRev to perform keyword substitution, so that fields like repository revision and URL are saved to a text file, you need to supply a template file <literal>SrcVersionFile</literal> and an output file <literal>DstVersionFile</literal> which contains the substituted version of the template."
9823 #: ../source/TortoiseGit_en.xml:12349
9824 #: ../source/TortoiseGit_en.xml:12434
9825 msgid "List of available command line switches"
9832 #: ../source/TortoiseGit_en.xml:12355
9833 #: ../source/TortoiseGit_en.xml:13569
9834 #: ../source/TortoiseGit_en.xml:14660
9835 #: ../source/TortoiseGit_en.xml:15663
9844 #: ../source/TortoiseGit_en.xml:12356
9845 #: ../source/TortoiseGit_en.xml:12441
9846 #: ../source/TortoiseGit_en.xml:12648
9847 #: ../source/TortoiseGit_en.xml:13825
9848 #: ../source/TortoiseGit_en.xml:14230
9853 #: ../source/TortoiseGit_en.xml:12364
9854 msgid "ERRORLEVEL 7"
9858 #: ../source/TortoiseGit_en.xml:12362
9859 msgid "If this switch is given, SubWCRev will exit with <placeholder-1/> if the working copy contains local modifications. This may be used to prevent building with uncommitted changes present."
9863 #: ../source/TortoiseGit_en.xml:12373
9864 msgid "ERRORLEVEL 8"
9868 #: ../source/TortoiseGit_en.xml:12371
9869 msgid "If this switch is given, SubWCRev will exit with <placeholder-1/> if the working copy contains mixed revisions. This may be used to prevent building with a partially updated working copy."
9873 #: ../source/TortoiseGit_en.xml:12382
9874 msgid "ERRORLEVEL 9"
9878 #: ../source/TortoiseGit_en.xml:12380
9879 msgid "If this switch is given, SubWCRev will exit with <placeholder-1/> if the destination file already exists."
9883 #: ../source/TortoiseGit_en.xml:12388
9884 msgid "If this switch is given, SubWCRev will include the last-changed revision of folders. The default behaviour is to use only files when getting the revision numbers."
9888 #: ../source/TortoiseGit_en.xml:12400
9889 msgid "svn:externals"
9893 #: ../source/TortoiseGit_en.xml:12397
9894 msgid "If this switch is given, SubWCRev will examine directories which are included with <placeholder-1/>, but only if they are from the same repository. The default behaviour is to ignore externals."
9898 #: ../source/TortoiseGit_en.xml:12407
9899 msgid "If this switch is given, SubWCRev will output the revision numbers in HEX."
9903 #: ../source/TortoiseGit_en.xml:12414
9904 msgid "If this switch is given, SubWCRev will output the revision numbers in HEX, with '0X' prepended."
9908 #: ../source/TortoiseGit_en.xml:12342
9909 msgid "There are a number of optional switches which affect the way SubWCRev works. If you use more than one, they must be specified as a single group, eg. <literal>-nm</literal>, not <literal>-n -m</literal>. <placeholder-1/>"
9913 #: ../source/TortoiseGit_en.xml:12429
9914 msgid "Keyword Substitution"
9918 #: ../source/TortoiseGit_en.xml:12440
9923 #: ../source/TortoiseGit_en.xml:12447
9924 msgid "Replaced with the highest commit revision in the working copy."
9928 #: ../source/TortoiseGit_en.xml:12458
9929 msgid "yyyy-mm-dd hh:mm:ss"
9933 #: ../source/TortoiseGit_en.xml:12460
9938 #: ../source/TortoiseGit_en.xml:12462
9939 msgid "$WCDATE=%a %b %d %I:%M:%S %p$"
9943 #: ../source/TortoiseGit_en.xml:12465
9944 msgid "online reference"
9948 #: ../source/TortoiseGit_en.xml:12454
9949 msgid "Replaced with the commit date/time of the highest commit revision. By default, international format is used: <placeholder-1/>. Alternatively, you can specify a custom format which will be used with <placeholder-2/>, for example: <placeholder-3/>. For a list of available formatting characters, look at the <ulink url=\"http://www.cppreference.com/stddate/strftime.html\"><placeholder-4/></ulink>."
9953 #: ../source/TortoiseGit_en.xml:12471
9954 msgid "Replaced with the current system date/time. This can be used to indicate the build time. Time formatting is as described above."
9958 #: ../source/TortoiseGit_en.xml:12479
9959 msgid "Replaced with the update revision range in the working copy. If the working copy is in a consistent state, this will be a single revision. If the working copy contains mixed revisions, either due to being out of date, or due to a deliberate update-to-revision, then the range will be shown in the form 100:200"
9963 #: ../source/TortoiseGit_en.xml:12492
9964 msgid "$WCMIXED?TText:FText$"
9972 #: ../source/TortoiseGit_en.xml:12493
9973 #: ../source/TortoiseGit_en.xml:12501
9974 #: ../source/TortoiseGit_en.xml:12528
9975 #: ../source/TortoiseGit_en.xml:12536
9976 #: ../source/TortoiseGit_en.xml:12544
9985 #: ../source/TortoiseGit_en.xml:12494
9986 #: ../source/TortoiseGit_en.xml:12502
9987 #: ../source/TortoiseGit_en.xml:12529
9988 #: ../source/TortoiseGit_en.xml:12537
9989 #: ../source/TortoiseGit_en.xml:12545
9994 #: ../source/TortoiseGit_en.xml:12491
9995 msgid "<placeholder-1/> is replaced with <placeholder-2/> if there are mixed update revisions, or <placeholder-3/> if not."
9999 #: ../source/TortoiseGit_en.xml:12500
10000 msgid "$WCMODS?TText:FText$"
10004 #: ../source/TortoiseGit_en.xml:12499
10005 msgid "<placeholder-1/> is replaced with <placeholder-2/> if there are local modifications, or <placeholder-3/> if not."
10009 #: ../source/TortoiseGit_en.xml:12507
10010 msgid "Replaced with the repository URL of the working copy path passed to SubWCRev."
10014 #: ../source/TortoiseGit_en.xml:12514
10015 msgid "Replaced with the current time and date"
10019 #: ../source/TortoiseGit_en.xml:12520
10020 msgid "Replaced with the current time and date in standard format"
10024 #: ../source/TortoiseGit_en.xml:12527
10025 msgid "$WCINSVN?TText:FText$"
10029 #: ../source/TortoiseGit_en.xml:12526
10030 msgid "<placeholder-1/> is replaced with <placeholder-2/> if the entry is versioned, or <placeholder-3/> if not."
10034 #: ../source/TortoiseGit_en.xml:12535
10035 msgid "$WCNEEDSLOCK?TText:FText$"
10039 #: ../source/TortoiseGit_en.xml:12534
10040 msgid "<placeholder-1/> is replaced with <placeholder-2/> if the entry has the svn:needs-lock property set, or <placeholder-3/> if not."
10044 #: ../source/TortoiseGit_en.xml:12543
10045 msgid "$WCISLOCKED?TText:FText$"
10049 #: ../source/TortoiseGit_en.xml:12542
10050 msgid "<placeholder-1/> is replaced with <placeholder-2/> if the entry is locked, or <placeholder-3/> if not."
10054 #: ../source/TortoiseGit_en.xml:12550
10055 msgid "Replaced with the lock date"
10059 #: ../source/TortoiseGit_en.xml:12556
10060 msgid "Replaced with the name of the lock owner"
10064 #: ../source/TortoiseGit_en.xml:12562
10065 msgid "Replaced with the comment of the lock"
10069 #: ../source/TortoiseGit_en.xml:12430
10070 msgid "If a source and destination files are supplied, SubWCRev copies source to destination, performing keyword substitution as follows: <placeholder-1/>"
10074 #: ../source/TortoiseGit_en.xml:12575
10075 msgid "Keyword Example"
10079 #: ../source/TortoiseGit_en.xml:12576
10080 msgid "The example below shows how keywords in a template file are substituted in the output file."
10083 #. (programlisting)
10084 #: ../source/TortoiseGit_en.xml:12580
10088 "// Test file for SubWCRev: testfile.tmpl\n"
10090 "char *Revision = \"$WCREV$\";\n"
10091 "char *Modified = \"$WCMODS?Modified:Not modified$\";\n"
10092 "char *Date = \"$WCDATE$\";\n"
10093 "char *Range = \"$WCRANGE$\";\n"
10094 "char *Mixed = \"$WCMIXED?Mixed revision WC:Not mixed$\";\n"
10095 "char *URL = \"$WCURL$\";\n"
10097 "#if $WCMODS?1:0$\n"
10098 "#error Source is modified\n"
10105 #: ../source/TortoiseGit_en.xml:12596
10106 msgid "After running <literal>SubWCRev.exe path\\to\\workingcopy testfile.tmpl testfile.txt</literal>, the output file <literal>testfile.txt</literal> would looks like this:"
10109 #. (programlisting)
10110 #: ../source/TortoiseGit_en.xml:12600
10114 "// Test file for SubWCRev: testfile.txt\n"
10116 "char *Revision = \"3701\";\n"
10117 "char *Modified = \"Modified\";\n"
10118 "char *Date = \"2005/06/15 11:15:12\";\n"
10119 "char *Range = \"3699:3701\";\n"
10120 "char *Mixed = \"Mixed revision WC\";\n"
10121 "char *URL = \"http://TortoiseGit.tigris.org/svn/TortoiseGit/...\n"
10122 "trunk/src/SubWCRev\";\n"
10125 "#error Source is modified\n"
10132 #: ../source/TortoiseGit_en.xml:12618
10133 msgid "A file like this will be included in the build so you would expect it to be versioned. Be sure to version the template file, not the generated file, otherwise each time you regenerate the version file you need to commit the change, which in turn means the version file needs to be updated."
10137 #: ../source/TortoiseGit_en.xml:12631
10138 msgid "COM interface"
10142 #: ../source/TortoiseGit_en.xml:12633
10143 msgid "COM SubWCRev interface"
10147 #: ../source/TortoiseGit_en.xml:12641
10148 msgid "COM/automation methods supported"
10152 #: ../source/TortoiseGit_en.xml:12647
10157 #: ../source/TortoiseGit_en.xml:12660
10162 #: ../source/TortoiseGit_en.xml:12663
10167 #: ../source/TortoiseGit_en.xml:12654
10168 msgid "This method traverses the working copy gathering the revision information. Naturally you must call this before you can access the information using the remaining methods. The first parameter is the path. The second parameter should be true if you want to include folder revisions. Equivalent to the <placeholder-1/> command line switch. The third parameter should be true if you want to include svn:externals. Equivalent to the <placeholder-2/> command line switch."
10172 #: ../source/TortoiseGit_en.xml:12671
10177 #: ../source/TortoiseGit_en.xml:12669
10178 msgid "The highest commit revision in the working copy. Equivalent to <placeholder-1/>"
10182 #: ../source/TortoiseGit_en.xml:12678
10187 #: ../source/TortoiseGit_en.xml:12676
10188 msgid "The commit date/time of the highest commit revision. Equivalent to <placeholder-1/>"
10192 #: ../source/TortoiseGit_en.xml:12683
10193 msgid "The author of the highest commit revision, that is, the last person to commit changes to the working copy."
10198 #: ../source/TortoiseGit_en.xml:12690
10199 #: ../source/TortoiseGit_en.xml:12694
10204 #: ../source/TortoiseGit_en.xml:12690
10205 msgid "The minimum update revision, as shown in <placeholder-1/>"
10209 #: ../source/TortoiseGit_en.xml:12694
10210 msgid "The maximum update revision, as shown in <placeholder-1/>"
10214 #: ../source/TortoiseGit_en.xml:12698
10215 msgid "True if there are local modifications"
10219 #: ../source/TortoiseGit_en.xml:12704
10224 #: ../source/TortoiseGit_en.xml:12705
10229 #: ../source/TortoiseGit_en.xml:12702
10230 msgid "Replaced with the repository URL of the working copy path used in <placeholder-1/>. Equivalent to <placeholder-2/>"
10234 #: ../source/TortoiseGit_en.xml:12635
10235 msgid "If you need to access Git revision information from other programs, you can use the COM interface of SubWCRev. The object to create is <literal>SubWCRev.object</literal>, and the following methods are supported: <placeholder-1/>"
10238 #. (programlisting)
10239 #: ../source/TortoiseGit_en.xml:12714
10243 "// testCOM.js - javascript file\n"
10244 "// test script for the SubWCRev COM/Automation-object\n"
10246 "filesystem = new ActiveXObject(\"Scripting.FileSystemObject\");\n"
10248 "SubWCRev1 = new ActiveXObject(\"SubWCRev.object\");\n"
10249 "SubWCRev2 = new ActiveXObject(\"SubWCRev.object\");\n"
10250 "SubWCRev3 = new ActiveXObject(\"SubWCRev.object\");\n"
10252 "SubWCRev1.GetWCInfo(filesystem.GetAbsolutePathName(\".\"), 0, 0);\n"
10253 "SubWCRev2.GetWCInfo(filesystem.GetAbsolutePathName(\"..\"), 1, 1);\n"
10254 "SubWCRev3.GetWCInfo(filesystem.GetAbsolutePathName(\"SubWCRev.cpp\"), \n"
10257 "sInfo1 = \"Revision = \" + SubWCRev1.Revision + \n"
10259 "Min Revision = \" + SubWCRev1.MinRev +\n"
10261 "Max Revision = \" + SubWCRev1.MaxRev +\n"
10263 "Date = \" + SubWCRev1.Date +\n"
10265 "URL = \" + SubWCRev1.Url +\n"
10267 "Author = \" + SubWCRev1.Author +\n"
10269 "HasMods = \" + SubWCRev1.HasModifications;\n"
10270 "sInfo2 = \"Revision = \" + SubWCRev2.Revision +\n"
10272 "Min Revision = \" + SubWCRev2.MinRev +\n"
10274 "Max Revision = \" + SubWCRev2.MaxRev +\n"
10276 "Date = \" + SubWCRev2.Date +\n"
10278 "URL = \" + SubWCRev2.Url +\n"
10280 "Author = \" + SubWCRev2.Author +\n"
10282 "HasMods = \" + SubWCRev2.HasModifications;\n"
10283 "sInfo3 = \"Revision = \" + SubWCRev3.Revision +\n"
10285 "Min Revision = \" + SubWCRev3.MinRev +\n"
10287 "Max Revision = \" + SubWCRev3.MaxRev +\n"
10289 "Date = \" + SubWCRev3.Date +\n"
10291 "URL = \" + SubWCRev3.Url +\n"
10293 "Author = \" + SubWCRev3.Author +\n"
10295 "HasMods = \" + SubWCRev3.HasModifications;\n"
10297 "WScript.Echo(sInfo1);\n"
10298 "WScript.Echo(sInfo2);\n"
10299 "WScript.Echo(sInfo3);\n"
10303 #: ../source/TortoiseGit_en.xml:12712
10304 msgid "The following example shows how the interface might be used. <placeholder-1/>"
10308 #: ../source/TortoiseGit_en.xml:12759
10309 msgid "Frequently Asked Questions (FAQ)"
10313 #: ../source/TortoiseGit_en.xml:12761
10318 #: ../source/TortoiseGit_en.xml:12764
10319 msgid "Because TortoiseGit is being developed all the time it is sometimes hard to keep the documentation completely up to date. We maintain an <ulink url=\"http://TortoiseGit.tigris.org/faq.html\"><citetitle>online FAQ</citetitle></ulink> which contains a selection of the questions we are asked the most on the TortoiseGit mailing lists <email>tortoisegit-dev@googlegroups.com </email> and <email>tortoisegit-users@googlegroups.com </email>."
10323 #: ../source/TortoiseGit_en.xml:12776
10324 msgid "We also maintain a project <ulink url=\"http://issues.TortoiseGit.net\"><citetitle>Issue Tracker</citetitle></ulink> which tells you about some of the things we have on our To-Do list, and bugs which have already been fixed. If you think you have found a bug, or want to request a new feature, check here first to see if someone else got there before you."
10328 #: ../source/TortoiseGit_en.xml:12786
10329 msgid "If you have a question which is not answered anywhere else, the best place to ask it is on one of the mailing lists. <email>tortoisegit-users@googlegroups.com </email> is the one to use if you have questions about using TortoiseGit. If you want to help out with the development of TortoiseGit, then you should take part in discussions on <email>tortoisegit-dev@googlegroups.com </email>."
10333 #: ../source/TortoiseGit_en.xml:12802
10334 msgid "How Do I..."
10338 #: ../source/TortoiseGit_en.xml:12804
10339 msgid "This appendix contains solutions to problems/questions you might have when using TortoiseGit."
10343 #: ../source/TortoiseGit_en.xml:12810
10344 msgid "Move/copy a lot of files at once"
10348 #: ../source/TortoiseGit_en.xml:12812
10353 #: ../source/TortoiseGit_en.xml:12818
10358 #: ../source/TortoiseGit_en.xml:12820
10359 msgid "Moving/Copying single files can be done by using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Rename...</guimenuitem></menuchoice>. But if you want to move/copy a lot of files, this way is just too slow and too much work."
10363 #: ../source/TortoiseGit_en.xml:12829
10364 msgid "The recommended way is by <action>right-dragging</action> the files to the new location. Simply <action>right-click</action> on the files you want to move/copy without releasing the mouse button. Then drag the files to the new location and release the mouse button. A context menu will appear where you can either choose <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>SVN Copy versioned files here</guimenuitem></menuchoice>. or <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>SVN Move versioned files here</guimenuitem></menuchoice>."
10368 #: ../source/TortoiseGit_en.xml:12852
10369 msgid "Force users to enter a log message"
10373 #: ../source/TortoiseGit_en.xml:12854
10374 msgid "log message"
10378 #: ../source/TortoiseGit_en.xml:12857
10379 msgid "commit message"
10383 #: ../source/TortoiseGit_en.xml:12860
10384 msgid "empty message"
10388 #: ../source/TortoiseGit_en.xml:12862
10389 msgid "There are two ways to prevent users from committing with an empty log message. One is specific to TortoiseGit, the other works for all Git clients, but requires access to the server directly."
10393 #: ../source/TortoiseGit_en.xml:12868
10394 msgid "Hook-script on the server"
10398 #: ../source/TortoiseGit_en.xml:12869
10399 msgid "If you have direct access to the repository server, you can install a pre-commit hook script which rejects all commits with an empty or too short log message."
10403 #: ../source/TortoiseGit_en.xml:12874
10404 msgid "In the repository folder on the server, there's a sub-folder <filename>hooks</filename> which contains some example hook scripts you can use. The file <filename>pre-commit.tmpl</filename> contains a sample script which will reject commits if no log message is supplied, or the message is too short. The file also contains comments on how to install/use this script. Just follow the instructions in that file."
10408 #: ../source/TortoiseGit_en.xml:12884
10409 msgid "This method is the recommended way if your users also use other Git clients than TortoiseGit. The drawback is that the commit is rejected by the server and therefore users will get an error message. The client can't know before the commit that it will be rejected. If you want to make TortoiseGit have the <guibutton>OK</guibutton> button disabled until the log message is long enough then please use the method described below."
10413 #: ../source/TortoiseGit_en.xml:12895
10414 msgid "Project properties"
10418 #: ../source/TortoiseGit_en.xml:12896
10419 msgid "TortoiseGit uses properties to control some of its features. One of those properties is the <literal>tsvn:logminsize</literal> property."
10423 #: ../source/TortoiseGit_en.xml:12900
10424 msgid "If you set that property on a folder, then TortoiseGit will disable the <guibutton>OK</guibutton> button in all commit dialogs until the user has entered a log message with at least the length specified in the property."
10428 #: ../source/TortoiseGit_en.xml:12905
10429 msgid "For detailed information on those project properties, please refer to <xref linkend=\"tsvn-dug-propertypage\"/>"
10433 #: ../source/TortoiseGit_en.xml:12912
10434 msgid "Update selected files from the repository"
10438 #: ../source/TortoiseGit_en.xml:12916
10439 msgid "Normally you update your working copy using <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Update</guimenuitem></menuchoice>. But if you only want to pick up some new files that a colleague has added without merging in any changes to other files at the same time, you need a different approach."
10443 #: ../source/TortoiseGit_en.xml:12926
10444 msgid "Use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Check for Modifications</guimenuitem></menuchoice>. and click on <guibutton>Check repository</guibutton> to see what has changed in the repository. Select the files you want to update locally, then use the context menu to update just those files."
10448 #: ../source/TortoiseGit_en.xml:12938
10449 msgid "Roll back (Undo) revisions in the repository"
10453 #: ../source/TortoiseGit_en.xml:12940
10458 #: ../source/TortoiseGit_en.xml:12946
10459 msgid "undo commit"
10463 #: ../source/TortoiseGit_en.xml:12949
10464 msgid "undo change"
10468 #: ../source/TortoiseGit_en.xml:12952
10469 msgid "Use the revision log dialog"
10473 #: ../source/TortoiseGit_en.xml:12953
10474 msgid "The easiest way to revert the changes from a single revision, or from a range of revisions, is to use the revision log dialog. This is also the method to use of you want to discard recent changes and make an earlier revision the new HEAD."
10478 #: ../source/TortoiseGit_en.xml:12962
10479 msgid "Select the file or folder in which you need to revert the changes. If you want to revert all changes, this should be the top level folder."
10483 #: ../source/TortoiseGit_en.xml:12969
10484 msgid "Select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Show Log</guimenuitem></menuchoice> to display a list of revisions. You may need to use <guibutton>Show All</guibutton> or <guibutton>Next 100</guibutton> to show the revision(s) you are interested in."
10488 #: ../source/TortoiseGit_en.xml:12982
10489 msgid "Select the revision you wish to revert. If you want to undo a range of revisions, select the first one and hold the <keycap>Shift</keycap> key while selecting the last one. Note that for multiple revisions, the range must be unbroken with no gaps. <action>Right click</action> on the selected revision(s), then select <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Revert changes from this revision</guimenuitem></menuchoice>."
10493 #: ../source/TortoiseGit_en.xml:12997
10494 msgid "Or if you want to make an earlier revision the new HEAD revision, <action>right click</action> on the selected revision(s), then select <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Revert to this revision</guimenuitem></menuchoice>. This will discard <emphasis>all</emphasis> changes after the selected revision."
10499 #: ../source/TortoiseGit_en.xml:13010
10500 #: ../source/TortoiseGit_en.xml:13067
10501 msgid "You have reverted the changes within your working copy. Check the results, then commit the changes."
10505 #: ../source/TortoiseGit_en.xml:13016
10506 msgid "Use the merge dialog"
10510 #: ../source/TortoiseGit_en.xml:13017
10511 msgid "To undo a larger range of revisions, you can use the Merge dialog. The previous method uses merging behind the scenes; this method uses it explicitly."
10515 #: ../source/TortoiseGit_en.xml:13024
10516 msgid "In your working copy select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Merge</guimenuitem></menuchoice>."
10520 #: ../source/TortoiseGit_en.xml:13033
10521 msgid "In the <guilabel>From:</guilabel> field enter the full folder URL of the branch or tag containing the changes you want to revert in your working copy. This should come up as the default URL."
10525 #: ../source/TortoiseGit_en.xml:13041
10526 msgid "In the <guilabel>From Revision</guilabel> field enter the revision number that you are currently at. If you are sure there is no-one else making changes, you can use the HEAD revision."
10530 #: ../source/TortoiseGit_en.xml:13049
10531 msgid "make sure the <guilabel>Use \"From:\" URL</guilabel> checkbox is checked."
10535 #: ../source/TortoiseGit_en.xml:13055
10536 msgid "In the <guilabel>To Revision</guilabel> field enter the revision number that you want to revert to, namely the one <emphasis>before</emphasis> the first revision to be reverted."
10540 #: ../source/TortoiseGit_en.xml:13062
10541 msgid "Click <guibutton>OK</guibutton> to complete the merge."
10545 #: ../source/TortoiseGit_en.xml:13073
10546 msgid "Use <literal>svndumpfilter</literal>"
10550 #: ../source/TortoiseGit_en.xml:13074
10551 msgid "Since TortoiseGit never loses data, your <quote>rolled back</quote> revisions still exist as intermediate revisions in the repository. Only the HEAD revision was changed to a previous state. If you want to make revisions disappear completely from your repository, erasing all trace that they ever existed, you have to use more extreme measures. Unless there is a really good reason to do this, it is <emphasis>not recommended</emphasis>. One possible reason would be that someone committed a confidential document to a public repository."
10555 #: ../source/TortoiseGit_en.xml:13085
10556 msgid "The only way to remove data from the repository is to use the Git command line tool <literal>svnadmin</literal>. You can find a description of how this works in the <ulink url=\"http://svnbook.red-bean.com/en/1.4/svn.reposadmin.maint.html\"><citetitle>Repository Maintenance</citetitle></ulink>."
10560 #: ../source/TortoiseGit_en.xml:13096
10561 msgid "Compare two revisions of a file"
10565 #: ../source/TortoiseGit_en.xml:13098
10566 msgid "compare files"
10570 #: ../source/TortoiseGit_en.xml:13101
10575 #: ../source/TortoiseGit_en.xml:13103
10576 msgid "If you want to compare two revisions in a file's history, for example revisions 100 and 200 of the same file, just use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Show Log</guimenuitem></menuchoice> to list the revision history for that file. Pick the two revisions you want to compare then use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Compare Revisions</guimenuitem></menuchoice>."
10580 #: ../source/TortoiseGit_en.xml:13117
10581 msgid "If you want to compare the same file in two different trees, for example the trunk and a branch, you can use the repository browser to open up both trees, select the file in both places, then use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Compare Revisions</guimenuitem></menuchoice>."
10585 #: ../source/TortoiseGit_en.xml:13127
10586 msgid "If you want to compare two trees to see what has changed, for example the trunk and a tagged release, you can use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Revision Graph</guimenuitem></menuchoice> Select the two nodes to compare, then use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Compare HEAD Revisions</guimenuitem></menuchoice>. This will show a list of changed files, and you can then select individual files to view the changes in detail. Alternatively use <menuchoice><guimenu>Context Menu</guimenu><guimenuitem>Unified Diff of HEAD Revisions</guimenuitem></menuchoice> to see a summary of all differences, with minimal context."
10590 #: ../source/TortoiseGit_en.xml:13150
10591 msgid "Include a common sub-project"
10595 #: ../source/TortoiseGit_en.xml:13152
10596 msgid "common projects"
10600 #: ../source/TortoiseGit_en.xml:13158
10601 msgid "vendor projects"
10605 #: ../source/TortoiseGit_en.xml:13160
10606 msgid "Sometimes you will want to include another project within your working copy, perhaps some library code. You don't want to make a duplicate of this code in your repository because then you would lose connection with the original (and maintained) code. Or maybe you have several projects which share core code. There are at least 3 ways of dealing with this."
10610 #: ../source/TortoiseGit_en.xml:13170
10611 msgid "Use svn:externals"
10615 #: ../source/TortoiseGit_en.xml:13171
10616 msgid "Set the <literal>svn:externals</literal> property for a folder in your project. This property consists of one or more lines; each line has the name of a sub-folder which you want to use as the checkout folder for common code, and the repository URL that you want to be checked out there. For full details refer to <xref linkend=\"tsvn-dug-import-4\"/>."
10620 #: ../source/TortoiseGit_en.xml:13179
10621 msgid "Commit the new folder. Now when you update, Git will pull a copy of that project from its repository into your working copy. The sub-folders will be created automatically if required. Each time you update your main working copy, you will also receive the latest version of all external projects."
10625 #: ../source/TortoiseGit_en.xml:13198
10626 msgid "Of the three methods described, this is the only one which needs no setup on the client side. Once externals are specified in the folder properties, all clients will get populated folders when they update."
10630 #: ../source/TortoiseGit_en.xml:13206
10631 msgid "Use a nested working copy"
10635 #: ../source/TortoiseGit_en.xml:13207
10636 msgid "Create a new folder within your project to contain the common code, but do not add it to Git"
10640 #: ../source/TortoiseGit_en.xml:13211
10641 msgid "Select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Checkout</guimenuitem></menuchoice> for the new folder and checkout a copy of the common code into it. You now have a separate working copy nested within your main working copy."
10645 #: ../source/TortoiseGit_en.xml:13221
10646 msgid "The two working copies are independent. When you commit changes to the parent, changes to the nested WC are ignored. Likewise when you update the parent, the nested WC is not updated."
10650 #: ../source/TortoiseGit_en.xml:13228
10651 msgid "Use a relative location"
10655 #: ../source/TortoiseGit_en.xml:13229
10657 "If you use the same common core code in several projects, and you do not want to keep multiple working copies of it for every project that uses it, you can just check it out to a separate location which is related to all the other projects which use it. For example: <screen>\n"
10658 "C:\\Projects\\Proj1\n"
10659 "C:\\Projects\\Proj2\n"
10660 "C:\\Projects\\Proj3\n"
10661 "C:\\Projects\\Common\n"
10662 "</screen> and refer to the common code using a relative path, eg. <filename>..\\..\\Common\\DSPcore</filename>."
10666 #: ../source/TortoiseGit_en.xml:13244
10668 "If your projects are scattered in unrelated locations you can use a variant of this, which is to put the common code in one location and use drive letter substitution to map that location to something you can hard code in your projects, eg. Checkout the common code to <filename>D:\\Documents\\Framework</filename> or <filename>C:\\Documents and Settings\\{login}\\My Documents\\framework</filename> then use <screen>\n"
10669 "SUBST X: \"D:\\Documents\\framework\"\n"
10670 "</screen> to create the drive mapping used in your source code. Your code can then use absolute locations. <screen>\n"
10671 "#include \"X:\\superio\\superio.h\"\n"
10676 #: ../source/TortoiseGit_en.xml:13262
10677 msgid "This method will only work in an all-PC environment, and you will need to document the required drive mappings so your team know where these mysterious files are. This method is strictly for use in closed development environments, and not recommended for general use."
10681 #: ../source/TortoiseGit_en.xml:13272
10682 msgid "Create a shortcut to a repository"
10686 #: ../source/TortoiseGit_en.xml:13274
10691 #: ../source/TortoiseGit_en.xml:13276
10693 "If you frequently need to open the repository browser at a particular location, you can create a desktop shortcut using the automation interface to TortoiseProc. Just create a new shortcut and set the target to: <screen>\n"
10694 "TortoiseProc.exe /command:repobrowser /path:\"url/to/repository\"\n"
10695 "</screen> Of course you need to include the real repository URL."
10699 #: ../source/TortoiseGit_en.xml:13288
10700 msgid "Ignore files which are already versioned"
10704 #: ../source/TortoiseGit_en.xml:13293
10705 msgid "remove versioning"
10709 #: ../source/TortoiseGit_en.xml:13296
10710 msgid "detach from repository"
10714 #: ../source/TortoiseGit_en.xml:13298
10715 msgid "If you accidentally added some files which should have been ignored, how do you get them out of version control without losing them? Maybe you have your own IDE configuration file which is not part of the project, but which took you a long time to set up just the way you like it."
10719 #: ../source/TortoiseGit_en.xml:13305
10720 msgid "If you have not yet committed the add, then all you have to do is use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Revert...</guimenuitem></menuchoice> to undo the add. You should then add the file(s) to the ignore list so they don't get added again later by mistake."
10724 #: ../source/TortoiseGit_en.xml:13320
10725 msgid "Hold the <keycap>Shift</keycap> key to get the extended context menu and use <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Delete (keep local)</guimenuitem></menuchoice> to mark the file/folder for deletion from the repository without losing the local copy."
10729 #: ../source/TortoiseGit_en.xml:13332
10730 msgid "<menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Commit</guimenuitem></menuchoice> the parent folder."
10734 #: ../source/TortoiseGit_en.xml:13341
10735 msgid "Add the file/folder to the ignore list so you don't get into the same trouble again."
10739 #: ../source/TortoiseGit_en.xml:13315
10740 msgid "If the files are already in the repository, you have to do a little more work. <placeholder-1/>"
10744 #: ../source/TortoiseGit_en.xml:13350
10745 msgid "Unversion a working copy"
10749 #: ../source/TortoiseGit_en.xml:13351
10750 msgid "If you have a working copy which you want to convert back to a plain folder tree without the <literal>.svn</literal> directories, you can simply export it to itself. Read <xref linkend=\"tsvn-dug-export-unversion\"/> to find out how."
10754 #: ../source/TortoiseGit_en.xml:13359
10755 msgid "Remove a working copy"
10759 #: ../source/TortoiseGit_en.xml:13360
10760 msgid "If you have a working copy which you no longer need, how do you get rid of it cleanly? Easy - just delete it in Windows Explorer! Working copies are private local entities, and they are self-contained."
10764 #: ../source/TortoiseGit_en.xml:13368
10765 msgid "Useful Tips For Administrators"
10769 #: ../source/TortoiseGit_en.xml:13370
10770 msgid "This appendix contains solutions to problems/questions you might have when you are responsible for deploying TortoiseGit to multiple client computers."
10774 #: ../source/TortoiseGit_en.xml:13377
10775 msgid "Deploy TortoiseGit via group policies"
10780 #: ../source/TortoiseGit_en.xml:13379
10781 #: ../source/TortoiseGit_en.xml:13504
10782 msgid "group policies"
10787 #: ../source/TortoiseGit_en.xml:13382
10788 #: ../source/TortoiseGit_en.xml:15471
10793 #: ../source/TortoiseGit_en.xml:13385
10798 #: ../source/TortoiseGit_en.xml:13388
10799 msgid "domain controller"
10803 #: ../source/TortoiseGit_en.xml:13391
10808 #: ../source/TortoiseGit_en.xml:13393
10809 msgid "The TortoiseGit installer comes as an MSI file, which means you should have no problems adding that MSI file to the group policies of your domain controller."
10813 #: ../source/TortoiseGit_en.xml:13398
10814 msgid "A good walk-through on how to do that can be found in the knowledge base article 314934 from Microsoft: <ulink url=\"http://support.microsoft.com/?kbid=314934\"><citetitle>http://support.microsoft.com/?kbid=314934</citetitle></ulink>."
10818 #: ../source/TortoiseGit_en.xml:13405
10819 msgid "Versions 1.3.0 and later of TortoiseGit must be installed under <emphasis>Computer Configuration</emphasis> and not under <emphasis>User Configuration</emphasis>. This is because those versions need the new CRT and MFC DLLs, which can only be deployed <emphasis>per computer</emphasis> and not <emphasis>per user</emphasis>. If you really must install TortoiseGit on a per user basis, then you must first install the MFC and CRT package version 8 from Microsoft on each computer you want to install TortoiseGit as per user."
10823 #: ../source/TortoiseGit_en.xml:13417
10824 msgid "Redirect the upgrade check"
10828 #: ../source/TortoiseGit_en.xml:13419
10829 msgid "upgrade check"
10833 #: ../source/TortoiseGit_en.xml:13422
10834 msgid "check new version"
10838 #: ../source/TortoiseGit_en.xml:13425
10843 #: ../source/TortoiseGit_en.xml:13427
10844 msgid "TortoiseGit checks if there's a new version available every few days. If there is a newer version available, a dialog shows up informing the user about that."
10848 #: ../source/TortoiseGit_en.xml:13433
10849 msgid "The upgrade dialog"
10853 #: ../source/TortoiseGit_en.xml:13436
10854 msgid "If you're responsible for a lot of users in your domain, you might want your users to use only versions you have approved and not have them install always the latest version. You probably don't want that upgrade dialog to show up so your users don't go and upgrade immediately."
10858 #: ../source/TortoiseGit_en.xml:13442
10860 "Versions 1.4.0 and later of TortoiseGit allow you to redirect that upgrade check to your intranet server. You can set the registry key <filename>HKCU\\Software\\TortoiseGit\\UpdateCheckURL</filename> (string value) to an URL pointing to a text file in your intranet. That text file must have the following format: <screen>\n"
10862 "A new version of TortoiseGit is available for you to download!\n"
10863 "http://192.168.2.1/downloads/TortoiseGit-1.4.1.6000-svn-1.4.0.msi\n"
10864 "</screen> The first line in that file is the version string. You must make sure that it matches the exact version string of the TortoiseGit installation package. The second line is a custom text, shown in the upgrade dialog. You can write there whatever you want. Just note that the space in the upgrade dialog is limited. Too long messages will get truncated! The third line is the URL to the new installation package. This URL is opened when the user clicks on the custom message label in the upgrade dialog. You can also just point the user to a web page instead of the MSI file directly. The URL is opened with the default web browser, so if you specify a web page, that page is opened and shown to the user. If you specify the MSI package, the browser will ask the user to save the MSI file locally."
10868 #: ../source/TortoiseGit_en.xml:13467
10869 msgid "Setting the <literal>SVN_ASP_DOT_NET_HACK</literal> environment variable"
10873 #: ../source/TortoiseGit_en.xml:13469
10874 msgid "SVN_ASP_DOT_NET_HACK"
10878 #: ../source/TortoiseGit_en.xml:13472
10883 #: ../source/TortoiseGit_en.xml:13475
10884 msgid "ASP projects"
10888 #: ../source/TortoiseGit_en.xml:13477
10889 msgid "As of version 1.4.0 and later, the TortoiseGit installer doesn't provide the user with the option to set the <literal>SVN_ASP_DOT_NET_HACK</literal> environment variable anymore, since that caused many problems and confusions with users which always install <emphasis>everything</emphasis> no matter if they know what it is for."
10893 #: ../source/TortoiseGit_en.xml:13485
10895 "But that option is only hidden for the user. You still can force the TortoiseGit installer to set that environment variable by setting the <literal>ASPDOTNETHACK</literal> property to TRUE. For example, you can start the installer like this: <screen>\n"
10896 "msiexec /i TortoiseGit-1.4.0.msi ASPDOTNETHACK=TRUE\n"
10901 #: ../source/TortoiseGit_en.xml:13496
10902 msgid "Disable context menu entries"
10906 #: ../source/TortoiseGit_en.xml:13498
10907 msgid "context menu entries"
10911 #: ../source/TortoiseGit_en.xml:13501
10912 msgid "disable functions"
10916 #: ../source/TortoiseGit_en.xml:13506
10917 msgid "As of version 1.5.0 and later, TortoiseGit allows you to disable (actually, hide) context menu entries. Since this is a feature which should not be used lightly but only if there is a compelling reason, there is no GUI for this and it has to be done directly in the registry. This can be used to disable certain commands for users who should not use them. But please note that only the context menu entries in the <emphasis>explorer</emphasis> are hidden, and the commands are still available through other means, e.g. the command line or even other dialogs in TortoiseGit itself!"
10921 #: ../source/TortoiseGit_en.xml:13516
10922 msgid "The registry keys which hold the information on which context menus to show are <filename>HKEY_CURRENT_USER\\Software\\TortoiseGit\\ContextMenuEntriesMaskLow</filename> and <filename>HKEY_CURRENT_USER\\Software\\TortoiseGit\\ContextMenuEntriesMaskHigh</filename>."
10926 #: ../source/TortoiseGit_en.xml:13521
10927 msgid "Each of these registry entries is a <literal>DWORD</literal> value, with each bit corresponding to a specific menu entry. A set bit means the corresponding menu entry is deactivated."
10931 #: ../source/TortoiseGit_en.xml:13528
10932 msgid "Menu entries and their values"
10936 #: ../source/TortoiseGit_en.xml:13534
10941 #: ../source/TortoiseGit_en.xml:13535
10948 #: ../source/TortoiseGit_en.xml:13541
10949 #: ../source/TortoiseGit_en.xml:14354
10950 #: ../source/TortoiseGit_en.xml:15371
10957 #: ../source/TortoiseGit_en.xml:13545
10958 #: ../source/TortoiseGit_en.xml:14372
10959 #: ../source/TortoiseGit_en.xml:15677
10966 #: ../source/TortoiseGit_en.xml:13549
10967 #: ../source/TortoiseGit_en.xml:14411
10968 #: ../source/TortoiseGit_en.xml:15397
10975 #: ../source/TortoiseGit_en.xml:13553
10976 #: ../source/TortoiseGit_en.xml:14723
10977 #: ../source/TortoiseGit_en.xml:15314
10984 #: ../source/TortoiseGit_en.xml:13557
10985 #: ../source/TortoiseGit_en.xml:14580
10986 #: ../source/TortoiseGit_en.xml:15610
10992 #: ../source/TortoiseGit_en.xml:13565
10993 #: ../source/TortoiseGit_en.xml:15598
11000 #: ../source/TortoiseGit_en.xml:13577
11001 #: ../source/TortoiseGit_en.xml:14684
11002 #: ../source/TortoiseGit_en.xml:15452
11007 #: ../source/TortoiseGit_en.xml:13581
11008 msgid "Create Repository here"
11013 #: ../source/TortoiseGit_en.xml:13585
11014 #: ../source/TortoiseGit_en.xml:14636
11021 #: ../source/TortoiseGit_en.xml:13589
11022 #: ../source/TortoiseGit_en.xml:14667
11023 #: ../source/TortoiseGit_en.xml:15524
11030 #: ../source/TortoiseGit_en.xml:13593
11031 #: ../source/TortoiseGit_en.xml:14574
11032 #: ../source/TortoiseGit_en.xml:15431
11038 #: ../source/TortoiseGit_en.xml:13597
11039 #: ../source/TortoiseGit_en.xml:14568
11044 #: ../source/TortoiseGit_en.xml:13601
11045 msgid "Update to revision"
11051 #: ../source/TortoiseGit_en.xml:13605
11052 #: ../source/TortoiseGit_en.xml:14458
11053 #: ../source/TortoiseGit_en.xml:15443
11059 #: ../source/TortoiseGit_en.xml:13609
11060 #: ../source/TortoiseGit_en.xml:14479
11066 #: ../source/TortoiseGit_en.xml:13613
11067 #: ../source/TortoiseGit_en.xml:14554
11068 msgid "Edit Conflicts"
11074 #: ../source/TortoiseGit_en.xml:13617
11075 #: ../source/TortoiseGit_en.xml:14709
11076 #: ../source/TortoiseGit_en.xml:15570
11081 #: ../source/TortoiseGit_en.xml:13621
11082 msgid "Check for modifications"
11086 #: ../source/TortoiseGit_en.xml:13625
11091 #: ../source/TortoiseGit_en.xml:13629
11092 msgid "Repository Browser"
11098 #: ../source/TortoiseGit_en.xml:13633
11099 #: ../source/TortoiseGit_en.xml:14743
11100 #: ../source/TortoiseGit_en.xml:15335
11106 #: ../source/TortoiseGit_en.xml:13637
11107 #: ../source/TortoiseGit_en.xml:14769
11108 msgid "Create Patch"
11113 #: ../source/TortoiseGit_en.xml:13641
11114 #: ../source/TortoiseGit_en.xml:14779
11115 msgid "Apply Patch"
11119 #: ../source/TortoiseGit_en.xml:13645
11120 msgid "Revision graph"
11125 #: ../source/TortoiseGit_en.xml:13649
11126 #: ../source/TortoiseGit_en.xml:15496
11131 #: ../source/TortoiseGit_en.xml:13653
11132 msgid "Remove Lock"
11136 #: ../source/TortoiseGit_en.xml:13657
11141 #: ../source/TortoiseGit_en.xml:13661
11142 msgid "Diff with URL"
11146 #: ../source/TortoiseGit_en.xml:13665
11147 msgid "Delete unversioned items"
11151 #: ../source/TortoiseGit_en.xml:13669
11156 #: ../source/TortoiseGit_en.xml:13673
11161 #: ../source/TortoiseGit_en.xml:13677
11166 #: ../source/TortoiseGit_en.xml:13683
11168 "Example: to disable the <quote>Relocate</quote> the <quote>Delete unversioned items</quote> and the <quote>Settings</quote> menu entries, add the values assigned to the entries like this: <screen>\n"
11169 " 0x0000000000080000\n"
11170 "+ 0x0000000080000000\n"
11171 "+ 0x2000000000000000\n"
11172 "= 0x2000000080080000\n"
11173 "</screen> The lower <literal>DWORD</literal> value (<literal>0x80080000</literal>) must then be stored in <filename>HKEY_CURRENT_USER\\Software\\TortoiseGit\\ContextMenuEntriesMaskLow</filename>, the higher <literal>DWORD</literal> value (<literal>0x20000000</literal>) in <filename>HKEY_CURRENT_USER\\Software\\TortoiseGit\\ContextMenuEntriesMaskHigh</filename>."
11177 #: ../source/TortoiseGit_en.xml:13700
11178 msgid "To enable the menu entries again, simply delete the two registry keys."
11182 #: ../source/TortoiseGit_en.xml:13706
11183 msgid "Automating TortoiseGit"
11187 #: ../source/TortoiseGit_en.xml:13708
11188 msgid "Since all commands for TortoiseGit are controlled through command line parameters, you can automate it with batch scripts or start specific commands and dialogs from other programs (e.g. your favourite text editor)."
11192 #: ../source/TortoiseGit_en.xml:13714
11193 msgid "Remember that TortoiseGit is a GUI client, and this automation guide shows you how to make the TortoiseGit dialogs appear to collect user input. If you want to write a script which requires no input, you should use the official Git command line client instead."
11198 #: ../source/TortoiseGit_en.xml:13726
11199 #: ../source/TortoiseGit_en.xml:14352
11200 msgid "TortoiseGit Commands"
11205 #: ../source/TortoiseGit_en.xml:13728
11206 #: ../source/TortoiseGit_en.xml:14197
11212 #: ../source/TortoiseGit_en.xml:13731
11213 #: ../source/TortoiseGit_en.xml:14200
11214 msgid "command line"
11218 #: ../source/TortoiseGit_en.xml:13733
11219 msgid "The TortoiseGit GUI program is called <literal>TortoiseProc.exe</literal>. All commands are specified with the parameter <option>/command:abcd</option> where <literal>abcd</literal> is the required command name. Most of these commands need at least one path argument, which is given with <option>/path:\"some\\path\"</option>. In the following table the command refers to the <option>/command:abcd</option> parameter and the path refers to the <option>/path:\"some\\path\"</option> parameter."
11223 #: ../source/TortoiseGit_en.xml:13742
11224 msgid "Since some of the commands can take a list of target paths (e.g. committing several specific files) the <option>/path</option> parameter can take several paths, separated by a <literal>*</literal> character."
11228 #: ../source/TortoiseGit_en.xml:13747
11229 msgid "TortoiseGit uses temporary files to pass multiple arguments between the shell extension and the main program. From TortoiseGit 1.5.0 on and later, <option>/notempfile</option> parameter is obsolete and there is no need to add it anymore."
11233 #: ../source/TortoiseGit_en.xml:13753
11234 msgid "The progress dialog which is used for commits, updates and many more commands usually stays open after the command has finished until the user presses the <guibutton>OK</guibutton> button. This can be changed by checking the corresponding option in the settings dialog. But using that setting will close the progress dialog, no matter if you start the command from your batch file or from the TortoiseGit context menu."
11238 #: ../source/TortoiseGit_en.xml:13761
11239 msgid "To specify a different location of the configuration file, use the parameter <option>/configdir:\"path\\to\\config\\directory\"</option>. This will override the default path, including any registry setting."
11243 #: ../source/TortoiseGit_en.xml:13772
11244 msgid "<option>/closeonend:0</option> don't close the dialog automatically"
11248 #: ../source/TortoiseGit_en.xml:13777
11249 msgid "<option>/closeonend:1</option> auto close if no errors"
11253 #: ../source/TortoiseGit_en.xml:13782
11254 msgid "<option>/closeonend:2</option> auto close if no errors and conflicts"
11258 #: ../source/TortoiseGit_en.xml:13787
11259 msgid "<option>/closeonend:3</option> auto close if no errors, conflicts and merges"
11263 #: ../source/TortoiseGit_en.xml:13792
11264 msgid "<option>/closeonend:4</option> auto close if no errors, conflicts and merges for local operations"
11268 #: ../source/TortoiseGit_en.xml:13766
11269 msgid "To close the progress dialog at the end of a command automatically without using the permanent setting you can pass the <option>/closeonend</option> parameter. <placeholder-1/>"
11273 #: ../source/TortoiseGit_en.xml:13799
11274 msgid "The table below lists all the commands which can be accessed using the TortoiseProc.exe command line. As described above, these should be used in the form <literal>/command:abcd</literal>. In the table, the <literal>/command</literal> prefix is omitted to save space."
11278 #: ../source/TortoiseGit_en.xml:13818
11279 msgid "List of available commands and options"
11283 #: ../source/TortoiseGit_en.xml:13824
11288 #: ../source/TortoiseGit_en.xml:13831
11289 msgid "Shows the about dialog. This is also shown if no command is given."
11326 #: ../source/TortoiseGit_en.xml:13839
11327 #: ../source/TortoiseGit_en.xml:13850
11328 #: ../source/TortoiseGit_en.xml:13858
11329 #: ../source/TortoiseGit_en.xml:13865
11330 #: ../source/TortoiseGit_en.xml:13877
11331 #: ../source/TortoiseGit_en.xml:13894
11332 #: ../source/TortoiseGit_en.xml:13902
11333 #: ../source/TortoiseGit_en.xml:13910
11334 #: ../source/TortoiseGit_en.xml:13917
11335 #: ../source/TortoiseGit_en.xml:13926
11336 #: ../source/TortoiseGit_en.xml:13932
11337 #: ../source/TortoiseGit_en.xml:13939
11338 #: ../source/TortoiseGit_en.xml:13940
11339 #: ../source/TortoiseGit_en.xml:13942
11340 #: ../source/TortoiseGit_en.xml:13948
11341 #: ../source/TortoiseGit_en.xml:13960
11342 #: ../source/TortoiseGit_en.xml:13968
11343 #: ../source/TortoiseGit_en.xml:13989
11344 #: ../source/TortoiseGit_en.xml:13996
11345 #: ../source/TortoiseGit_en.xml:14006
11346 #: ../source/TortoiseGit_en.xml:14012
11347 #: ../source/TortoiseGit_en.xml:14045
11348 #: ../source/TortoiseGit_en.xml:14051
11349 #: ../source/TortoiseGit_en.xml:14064
11350 #: ../source/TortoiseGit_en.xml:14073
11351 #: ../source/TortoiseGit_en.xml:14079
11352 #: ../source/TortoiseGit_en.xml:14087
11353 #: ../source/TortoiseGit_en.xml:14122
11354 #: ../source/TortoiseGit_en.xml:14132
11355 #: ../source/TortoiseGit_en.xml:14139
11356 #: ../source/TortoiseGit_en.xml:14146
11357 #: ../source/TortoiseGit_en.xml:14155
11358 #: ../source/TortoiseGit_en.xml:14172
11364 #: ../source/TortoiseGit_en.xml:13842
11365 #: ../source/TortoiseGit_en.xml:14014
11366 msgid "/startrev:xxx"
11371 #: ../source/TortoiseGit_en.xml:13843
11372 #: ../source/TortoiseGit_en.xml:14015
11373 msgid "/endrev:xxx"
11377 #: ../source/TortoiseGit_en.xml:13844
11382 #: ../source/TortoiseGit_en.xml:13838
11383 msgid "Opens the log dialog. The <placeholder-1/> specifies the file or folder for which the log should be shown. Three additional options can be set: <placeholder-2/>, <placeholder-3/> and <placeholder-4/>"
11388 #: ../source/TortoiseGit_en.xml:13851
11389 #: ../source/TortoiseGit_en.xml:13970
11394 #: ../source/TortoiseGit_en.xml:13849
11395 msgid "Opens the checkout dialog. The <placeholder-1/> specifies the target directory and the <placeholder-2/> specifies the URL to checkout from."
11399 #: ../source/TortoiseGit_en.xml:13857
11400 msgid "Opens the import dialog. The <placeholder-1/> specifies the directory with the data to import."
11404 #: ../source/TortoiseGit_en.xml:13866
11409 #: ../source/TortoiseGit_en.xml:13869
11414 #: ../source/TortoiseGit_en.xml:13870
11415 msgid "/nonrecursive"
11419 #: ../source/TortoiseGit_en.xml:13871
11420 msgid "/ignoreexternals"
11424 #: ../source/TortoiseGit_en.xml:13864
11425 msgid "Updates the working copy in <placeholder-1/> to HEAD. If the option <placeholder-2/> is given then a dialog is shown to ask the user to which revision the update should go. To avoid the dialog specify a revision number <placeholder-3/>. Other options are <placeholder-4/> and <placeholder-5/>."
11430 #: ../source/TortoiseGit_en.xml:13879
11431 #: ../source/TortoiseGit_en.xml:13972
11437 #: ../source/TortoiseGit_en.xml:13882
11438 #: ../source/TortoiseGit_en.xml:13975
11439 msgid "/logmsgfile:path"
11444 #: ../source/TortoiseGit_en.xml:13883
11445 #: ../source/TortoiseGit_en.xml:13976
11450 #: ../source/TortoiseGit_en.xml:13887
11451 msgid "/bugid:\"the bug id here\""
11455 #: ../source/TortoiseGit_en.xml:13876
11456 msgid "Opens the commit dialog. The <placeholder-1/> specifies the target directory or the list of files to commit. You can also specify the <placeholder-2/> switch to pass a predefined log message to the commit dialog. Or, if you don't want to pass the log message on the command line, use <placeholder-3/>, where <placeholder-4/> points to a file containing the log message. To pre-fill the bug ID box (in case you've set up integration with bug trackers properly), you can use the <placeholder-5/> to do that."
11460 #: ../source/TortoiseGit_en.xml:13893
11461 msgid "Adds the files in <placeholder-1/> to version control."
11465 #: ../source/TortoiseGit_en.xml:13900
11466 msgid "Reverts local modifications of a working copy. The <placeholder-1/> tells which items to revert."
11470 #: ../source/TortoiseGit_en.xml:13908
11471 msgid "Cleans up interrupted or aborted operations and unlocks the working copy in <placeholder-1/>."
11477 #: ../source/TortoiseGit_en.xml:13918
11478 #: ../source/TortoiseGit_en.xml:13999
11479 #: ../source/TortoiseGit_en.xml:14165
11480 msgid "/noquestion"
11484 #: ../source/TortoiseGit_en.xml:13915
11485 msgid "Marks a conflicted file specified in <placeholder-1/> as resolved. If <placeholder-2/> is given, then resolving is done without asking the user first if it really should be done."
11489 #: ../source/TortoiseGit_en.xml:13925
11490 msgid "Creates a repository in <placeholder-1/>"
11494 #: ../source/TortoiseGit_en.xml:13931
11495 msgid "Opens the switch dialog. The <placeholder-1/> specifies the target directory."
11499 #: ../source/TortoiseGit_en.xml:13938
11500 msgid "Exports the working copy in <placeholder-1/> to another directory. If the <placeholder-2/> points to an unversioned directory, a dialog will ask for an URL to export to the directory in <placeholder-3/>."
11504 #: ../source/TortoiseGit_en.xml:13951
11505 msgid "/mergefrom:xxx"
11509 #: ../source/TortoiseGit_en.xml:13952
11510 msgid "/mergeto:xxx"
11514 #: ../source/TortoiseGit_en.xml:13953
11515 msgid "/fromurl:URL"
11519 #: ../source/TortoiseGit_en.xml:13947
11520 msgid "Opens the merge dialog. The <placeholder-1/> specifies the target directory. Three additional options can be set: <placeholder-2/>, <placeholder-3/> and <placeholder-4/>. These pre-fill the relevant fields in the merge dialog."
11524 #: ../source/TortoiseGit_en.xml:13959
11525 msgid "Opens the merge all dialog. The <placeholder-1/> specifies the target directory."
11529 #: ../source/TortoiseGit_en.xml:13966
11530 msgid "Brings up the branch/tag dialog. The <placeholder-1/> is the working copy to branch/tag from. And the <placeholder-2/> is the target URL. You can also specify the <placeholder-3/> switch to pass a predefined log message to the branch/tag dialog. Or, if you don't want to pass the log message on the command line, use <placeholder-4/>, where <placeholder-5/> points to a file containing the log message."
11534 #: ../source/TortoiseGit_en.xml:13982
11535 msgid "Opens the settings dialog."
11539 #: ../source/TortoiseGit_en.xml:13988
11540 msgid "Removes the file(s) in <placeholder-1/> from version control."
11544 #: ../source/TortoiseGit_en.xml:13995
11545 msgid "Renames the file in <placeholder-1/>. The new name for the file is asked with a dialog. To avoid the question about renaming similar files in one step, pass <placeholder-2/>."
11551 #: ../source/TortoiseGit_en.xml:14008
11552 #: ../source/TortoiseGit_en.xml:14010
11553 #: ../source/TortoiseGit_en.xml:14016
11558 #: ../source/TortoiseGit_en.xml:14016
11563 #: ../source/TortoiseGit_en.xml:14004
11564 msgid "Starts the external diff program specified in the TortoiseGit settings. The <placeholder-1/> specifies the first file. If the option <placeholder-2/> is set, then the diff program is started with those two files. If <placeholder-3/> is omitted, then the diff is done between the file in <placeholder-4/> and its BASE. To explicitly set the revision numbers use <placeholder-5/> and <placeholder-6/>. If <placeholder-7/> is set and <placeholder-8/> is not set, then the diff is done by first blaming the files with the given revisions."
11568 #: ../source/TortoiseGit_en.xml:14024
11569 msgid "Depending on the URLs and revisions to compare, this either shows a unified diff (if the option <option>unified</option> is set), a dialog with a list of files that have changed or if the URLs point to files starts the diff viewer for those two files."
11573 #: ../source/TortoiseGit_en.xml:14031
11574 msgid "The options <option>url1</option>, <option>url2</option>, <option>revision1</option> and <option>revision2</option> must be specified. The options <option>pegrevision</option>, <option>ignoreancestry</option>, <option>blame</option> and <option>unified</option> are optional."
11578 #: ../source/TortoiseGit_en.xml:14042
11579 msgid "Starts the conflict editor specified in the TortoiseGit settings with the correct files for the conflicted file in <placeholder-1/>."
11583 #: ../source/TortoiseGit_en.xml:14050
11584 msgid "Opens the relocate dialog. The <placeholder-1/> specifies the working copy path to relocate."
11588 #: ../source/TortoiseGit_en.xml:14057
11589 msgid "Opens the help file."
11593 #: ../source/TortoiseGit_en.xml:14063
11594 msgid "Opens the check-for-modifications dialog. The <placeholder-1/> specifies the working copy directory."
11599 #: ../source/TortoiseGit_en.xml:14075
11600 #: ../source/TortoiseGit_en.xml:14077
11605 #: ../source/TortoiseGit_en.xml:14080
11606 msgid "/projectpropertiespath:path/to/wc"
11610 #: ../source/TortoiseGit_en.xml:14070
11611 msgid "Starts the repository browser dialog, pointing to the URL of the working copy given in <placeholder-1/> or <placeholder-2/> points directly to an URL. An additional option <placeholder-3/> can be used to specify the revision which the repository browser should show. If the <placeholder-4/> is omitted, it defaults to HEAD. If <placeholder-5/> points to an URL, the <placeholder-6/> specifies the path from where to read and use the project properties."
11615 #: ../source/TortoiseGit_en.xml:14088
11620 #: ../source/TortoiseGit_en.xml:14086
11621 msgid "Adds all targets in <placeholder-1/> to the ignore list, i.e. adds the <placeholder-2/> property to those files."
11625 #: ../source/TortoiseGit_en.xml:14095
11626 msgid "Opens the blame dialog for the file specified in <option>/path</option>."
11630 #: ../source/TortoiseGit_en.xml:14099
11631 msgid "If the options <option>/startrev</option> and <option>/endrev</option> are set, then the dialog asking for the blame range is not shown but the revision values of those options are used instead."
11635 #: ../source/TortoiseGit_en.xml:14106
11636 msgid "If the option <option>/line:nnn</option> is set, TortoiseBlame will open with the specified line number showing."
11640 #: ../source/TortoiseGit_en.xml:14111
11641 msgid "The options <option>/ignoreeol</option>, <option>/ignorespaces</option> and <option>/ignoreallspaces</option> are also supported."
11645 #: ../source/TortoiseGit_en.xml:14123
11646 msgid "/savepath:path"
11650 #: ../source/TortoiseGit_en.xml:14124
11651 msgid "/revision:xxx"
11655 #: ../source/TortoiseGit_en.xml:14120
11656 msgid "Saves a file from an URL or working copy path given in <placeholder-1/> to the location given in <placeholder-2/>. The revision is given in <placeholder-3/>. This can be used to get a file with a specific revision."
11660 #: ../source/TortoiseGit_en.xml:14130
11661 msgid "Creates a patch file for the path given in <placeholder-1/>."
11665 #: ../source/TortoiseGit_en.xml:14137
11666 msgid "Shows the revision graph for the path given in <placeholder-1/>."
11670 #: ../source/TortoiseGit_en.xml:14144
11671 msgid "Locks a file or all files in a directory given in <placeholder-1/>. The 'lock' dialog is shown so the user can enter a comment for the lock."
11675 #: ../source/TortoiseGit_en.xml:14153
11676 msgid "Unlocks a file or all files in a directory given in <placeholder-1/>."
11680 #: ../source/TortoiseGit_en.xml:14160
11681 msgid "Rebuilds the windows icon cache. Only use this in case the windows icons are corrupted. A side effect of this (which can't be avoided) is that the icons on the desktop get rearranged. To suppress the message box, pass <placeholder-1/>."
11685 #: ../source/TortoiseGit_en.xml:14170
11686 msgid "Shows the properties dialog for the path given in <placeholder-1/>."
11690 #: ../source/TortoiseGit_en.xml:14179
11692 "Examples (which should be entered on one line): <screen>\n"
11693 "TortoiseProc.exe /command:commit\n"
11694 " /path:\"c:\\svn_wc\\file1.txt*c:\\svn_wc\\file2.txt\"\n"
11695 " /logmsg:\"test log message\" /closeonend:0\n"
11697 "TortoiseProc.exe /command:update /path:\"c:\\svn_wc\\\" /closeonend:0\n"
11699 "TortoiseProc.exe /command:log /path:\"c:\\svn_wc\\file1.txt\"\n"
11700 " /startrev:50 /endrev:60 /closeonend:0\n"
11705 #: ../source/TortoiseGit_en.xml:14195
11706 msgid "TortoiseIDiff Commands"
11710 #: ../source/TortoiseGit_en.xml:14202
11711 msgid "The image diff tool has a few command line options which you can use to control how the tool is started. The program is called <literal>TortoiseIDiff.exe</literal>."
11715 #: ../source/TortoiseGit_en.xml:14207
11716 msgid "The table below lists all the options which can be passed to the image diff tool on the command line."
11720 #: ../source/TortoiseGit_en.xml:14223
11721 msgid "List of available options"
11725 #: ../source/TortoiseGit_en.xml:14229
11730 #: ../source/TortoiseGit_en.xml:14236
11731 msgid "Path to the file shown on the left."
11736 #: ../source/TortoiseGit_en.xml:14242
11737 #: ../source/TortoiseGit_en.xml:14255
11738 msgid "A title string. This string is used in the image view title instead of the full path to the image file."
11742 #: ../source/TortoiseGit_en.xml:14249
11743 msgid "Path to the file shown on the right."
11747 #: ../source/TortoiseGit_en.xml:14262
11748 msgid "If specified, the image diff tool switches to the overlay mode (alpha blend)."
11752 #: ../source/TortoiseGit_en.xml:14269
11753 msgid "If specified, the image diff tool fits both images together."
11757 #: ../source/TortoiseGit_en.xml:14276
11758 msgid "Shows the image info box."
11762 #: ../source/TortoiseGit_en.xml:14284
11764 "Example (which should be entered on one line): <screen>\n"
11765 "TortoiseIDiff.exe /left:\"c:\\images\\img1.jpg\" /lefttitle:\"image 1\"\n"
11766 " /right:\"c:\\images\\img2.jpg\" /righttitle:\"image 2\"\n"
11772 #: ../source/TortoiseGit_en.xml:14296
11773 msgid "Command Line Interface Cross Reference"
11777 #: ../source/TortoiseGit_en.xml:14298
11778 msgid "command line client"
11782 #: ../source/TortoiseGit_en.xml:14301
11787 #: ../source/TortoiseGit_en.xml:14304
11788 msgid "Sometimes this manual refers you to the main Git documentation, which describes Git in terms of the Command Line Interface (CLI). To help you understand what TortoiseGit is doing behind the scenes, we have compiled a list showing the equivalent CLI commands for each of TortoiseGit's GUI operations."
11792 #: ../source/TortoiseGit_en.xml:14313
11793 msgid "Even though there are CLI equivalents to what TortoiseGit does, remember that TortoiseGit does <emphasis>not</emphasis> call the CLI but uses the Git library directly."
11797 #: ../source/TortoiseGit_en.xml:14319
11798 msgid "If you think you have found a bug in TortoiseGit, we may ask you to try to reproduce it using the CLI, so that we can distinguish TortoiseGit issues from Git issues. This reference tells you which command to try."
11802 #: ../source/TortoiseGit_en.xml:14327
11803 msgid "Conventions and Basic Rules"
11807 #: ../source/TortoiseGit_en.xml:14328
11808 msgid "In the descriptions which follow, the URL for a repository location is shown simply as <literal>URL</literal>, and an example might be <systemitem class=\"url\">http://TortoiseGit.tigris.org/svn/TortoiseGit/trunk</systemitem>. The working copy path is shown simply as <literal>PATH</literal>, and an example might be <filename>C:\\TortoiseGit\\trunk</filename>."
11812 #: ../source/TortoiseGit_en.xml:14338
11813 msgid "Because TortoiseGit is a Windows Shell Extension, it is not able to use the notion of a current working directory. All working copy paths must be given using the absolute path, not a relative path."
11817 #: ../source/TortoiseGit_en.xml:14345
11818 msgid "Certain items are optional, and these are often controlled by checkboxes or radio buttons in TortoiseGit. These options are shown in [square brackets] in the command line definitions."
11822 #: ../source/TortoiseGit_en.xml:14355
11826 "svn checkout [-N] [--ignore-externals] [-r rev] URL PATH\n"
11830 #: ../source/TortoiseGit_en.xml:14358
11831 msgid "If <guilabel>Only checkout the top folder</guilabel> is checked, use the <literal>-N</literal> switch."
11836 #: ../source/TortoiseGit_en.xml:14362
11837 #: ../source/TortoiseGit_en.xml:14405
11838 msgid "If <guilabel>Omit externals</guilabel> is checked, use the <literal>--ignore-externals</literal> switch."
11842 #: ../source/TortoiseGit_en.xml:14366
11843 msgid "If you are checking out a specific revision, specify that after the URL using <literal>-r</literal> switch."
11847 #: ../source/TortoiseGit_en.xml:14373
11851 "svn info URL_of_WC\n"
11852 "svn update [-r rev] PATH\n"
11856 #: ../source/TortoiseGit_en.xml:14377
11857 msgid "Updating multiple items is currently not an atomic operation in Git. So TortoiseGit first finds the HEAD revision of the repository, and then updates all items to that particular revision number to avoid creating a mixed revision working copy."
11861 #: ../source/TortoiseGit_en.xml:14384
11862 msgid "If only one item is selected for updating or the selected items are not all from the same repository, TortoiseGit just updates to HEAD."
11866 #: ../source/TortoiseGit_en.xml:14389
11867 msgid "No command line options are used here. <guilabel>Update to revision</guilabel> also implements the update command, but offers more options."
11871 #: ../source/TortoiseGit_en.xml:14396
11872 msgid "Update to Revision"
11876 #: ../source/TortoiseGit_en.xml:14397
11880 "svn info URL_of_WC\n"
11881 "svn update [-r rev] [-N] [--ignore-externals] PATH\n"
11885 #: ../source/TortoiseGit_en.xml:14401
11886 msgid "If <guilabel>Only update the top folder</guilabel> is checked, use the <literal>-N</literal> switch."
11890 #: ../source/TortoiseGit_en.xml:14412
11891 msgid "In TortoiseGit, the commit dialog uses several Git commands. The first stage is a status check which determines the items in your working copy which can potentially be committed. You can review the list, diff files against BASE and select the items you want to be included in the commit."
11897 #: ../source/TortoiseGit_en.xml:14419
11898 #: ../source/TortoiseGit_en.xml:14581
11899 #: ../source/TortoiseGit_en.xml:14609
11903 "svn status -v PATH\n"
11908 #: ../source/TortoiseGit_en.xml:14422
11909 #: ../source/TortoiseGit_en.xml:14510
11910 msgid "If <guilabel>Show unversioned files</guilabel> is checked, TortoiseGit will also show all unversioned files and folders in the working copy hierarchy, taking account of the ignore rules. This particular feature has no direct equivalent in Git, as the <literal>svn status</literal> command does not descend into unversioned folders."
11914 #: ../source/TortoiseGit_en.xml:14430
11915 msgid "If you check any unversioned files and folders, those items will first be added to your working copy."
11920 #: ../source/TortoiseGit_en.xml:14434
11921 #: ../source/TortoiseGit_en.xml:14724
11925 "svn add PATH...\n"
11929 #: ../source/TortoiseGit_en.xml:14437
11930 msgid "When you click on OK, the Git commit takes place. If you have left all the file selection checkboxes in their default state, TortoiseGit uses a single recursive commit of the working copy. If you deselect some files, then a non-recursive commit (<literal>-N</literal>) must be used, and every path must be specified individually on the commit command line."
11934 #: ../source/TortoiseGit_en.xml:14445
11938 "svn commit -m \"LogMessage\" [-N] [--no-unlock] PATH...\n"
11944 #: ../source/TortoiseGit_en.xml:14448
11945 #: ../source/TortoiseGit_en.xml:14654
11946 #: ../source/TortoiseGit_en.xml:14737
11947 msgid "<literal>LogMessage</literal> here represents the contents of the log message edit box. This can be empty."
11951 #: ../source/TortoiseGit_en.xml:14452
11952 msgid "If <guilabel>Keep locks</guilabel> is checked, use the <literal>--no-unlock</literal> switch."
11956 #: ../source/TortoiseGit_en.xml:14459
11964 #: ../source/TortoiseGit_en.xml:14462
11965 msgid "If you use Diff from the main context menu, you are diffing a modified file against its BASE revision. The output from the CLI command above also does this and produces output in unified-diff format. However, this is not what TortoiseGit is using. TortoiseGit uses TortoiseMerge (or a diff program of your choosing) to display differences visually between full-text files, so there is no direct CLI equivalent."
11969 #: ../source/TortoiseGit_en.xml:14471
11970 msgid "You can also diff any 2 files using TortoiseGit, whether or not they are version controlled. TortoiseGit just feeds the two files into the chosen diff program and lets it work out where the differences lie."
11974 #: ../source/TortoiseGit_en.xml:14480
11978 "svn log -v -r 0:N --limit 100 [--stop-on-copy] PATH\n"
11980 "svn log -v -r M:N [--stop-on-copy] PATH\n"
11984 #: ../source/TortoiseGit_en.xml:14485
11985 msgid "By default, TortoiseGit tries to fetch 100 log messages using the --limit method. If the settings instruct it to use old APIs, then the second form is used to fetch the log messages for 100 repository revisions."
11989 #: ../source/TortoiseGit_en.xml:14491
11990 msgid "If <guilabel>Stop on copy/rename</guilabel> is checked, use the <literal>--stop-on-copy</literal> switch."
11994 #: ../source/TortoiseGit_en.xml:14498
11998 "svn status -v PATH\n"
12000 "svn status -u -v PATH\n"
12004 #: ../source/TortoiseGit_en.xml:14503
12005 msgid "The initial status check looks only at your working copy. If you click on <guibutton>Check repository</guibutton> then the repository is also checked to see which files would be changed by an update, which requires the <literal>-u</literal> switch."
12009 #: ../source/TortoiseGit_en.xml:14520
12010 msgid "Revision Graph"
12014 #: ../source/TortoiseGit_en.xml:14521
12015 msgid "The revision graph is a feature of TortoiseGit only. There's no equivalent in the command line client."
12019 #: ../source/TortoiseGit_en.xml:14525
12021 "What TortoiseGit does is an <screen>\n"
12022 "svn info URL_of_WC\n"
12024 "</screen> where URL is the repository <emphasis>root</emphasis> and then analyzes the data returned."
12028 #: ../source/TortoiseGit_en.xml:14536
12029 msgid "Repo Browser"
12033 #: ../source/TortoiseGit_en.xml:14537
12037 "svn info URL_of_WC\n"
12038 "svn list [-r rev] -v URL\n"
12042 #: ../source/TortoiseGit_en.xml:14541
12043 msgid "You can use <literal>svn info</literal> to determine the repository root, which is the top level shown in the repository browser. You cannot navigate <literal>Up</literal> above this level. Also, this command returns all the locking information shown in the repository browser."
12047 #: ../source/TortoiseGit_en.xml:14548
12048 msgid "The <literal>svn list</literal> call will list the contents of a directory, given a URL and revision."
12052 #: ../source/TortoiseGit_en.xml:14555
12053 msgid "This command has no CLI equivalent. It invokes TortoiseMerge or an external 3-way diff/merge tool to look at the files involved in the conflict and sort out which lines to use."
12057 #: ../source/TortoiseGit_en.xml:14562
12062 #: ../source/TortoiseGit_en.xml:14563
12066 "svn resolved PATH\n"
12070 #: ../source/TortoiseGit_en.xml:14569
12074 "svn rename CURR_PATH NEW_PATH\n"
12078 #: ../source/TortoiseGit_en.xml:14575
12082 "svn delete PATH\n"
12086 #: ../source/TortoiseGit_en.xml:14584
12087 msgid "The first stage is a status check which determines the items in your working copy which can potentially be reverted. You can review the list, diff files against BASE and select the items you want to be included in the revert."
12091 #: ../source/TortoiseGit_en.xml:14590
12092 msgid "When you click on OK, the Git revert takes place. If you have left all the file selection checkboxes in their default state, TortoiseGit uses a single recursive (<literal>-R</literal>) revert of the working copy. If you deselect some files, then every path must be specified individually on the revert command line."
12096 #: ../source/TortoiseGit_en.xml:14597
12100 "svn revert [-R] PATH...\n"
12104 #: ../source/TortoiseGit_en.xml:14603
12108 "svn cleanup PATH\n"
12112 #: ../source/TortoiseGit_en.xml:14608
12117 #: ../source/TortoiseGit_en.xml:14612
12118 msgid "The first stage is a status check which determines the files in your working copy which can potentially be locked. You can select the items you want to be locked."
12122 #: ../source/TortoiseGit_en.xml:14617
12126 "svn lock -m \"LockMessage\" [--force] PATH...\n"
12130 #: ../source/TortoiseGit_en.xml:14620
12131 msgid "<literal>LockMessage</literal> here represents the contents of the lock message edit box. This can be empty."
12135 #: ../source/TortoiseGit_en.xml:14624
12136 msgid "If <guilabel>Steal the locks</guilabel> is checked, use the <literal>--force</literal> switch."
12140 #: ../source/TortoiseGit_en.xml:14630
12141 msgid "Release Lock"
12145 #: ../source/TortoiseGit_en.xml:14631
12149 "svn unlock PATH\n"
12153 #: ../source/TortoiseGit_en.xml:14637
12157 "svn copy -m \"LogMessage\" URL URL\n"
12159 "svn copy -m \"LogMessage\" URL@rev URL@rev\n"
12161 "svn copy -m \"LogMessage\" PATH URL\n"
12165 #: ../source/TortoiseGit_en.xml:14649
12166 msgid "Specific revision in repository"
12170 #: ../source/TortoiseGit_en.xml:14644
12171 msgid "The Branch/Tag dialog performs a copy to the repository. There are 3 radio button options: <placeholder-1/> which correspond to the 3 command line variants above."
12175 #: ../source/TortoiseGit_en.xml:14661
12179 "svn info URL_of_WC\n"
12180 "svn switch [-r rev] URL PATH\n"
12184 #: ../source/TortoiseGit_en.xml:14668
12188 "svn merge [--dry-run] --force From_URL@revN To_URL@revM PATH\n"
12192 #: ../source/TortoiseGit_en.xml:14671
12193 msgid "The <guibutton>Dry run</guibutton> performs the same merge with the <literal>--dry-run</literal> switch."
12197 #: ../source/TortoiseGit_en.xml:14675
12201 "svn diff From_URL@revN To_URL@revM\n"
12205 #: ../source/TortoiseGit_en.xml:14678
12206 msgid "The <guibutton>Unified diff</guibutton> shows the diff operation which will be used to do the merge."
12210 #: ../source/TortoiseGit_en.xml:14685
12214 "svn export [-r rev] [--ignore-externals] URL Export_PATH\n"
12218 #: ../source/TortoiseGit_en.xml:14688
12219 msgid "This form is used when accessed from an unversioned folder, and the folder is used as the destination."
12223 #: ../source/TortoiseGit_en.xml:14692
12224 msgid "Exporting a working copy to a different location is done without using the Git library, so there's no matching command line equivalent."
12228 #: ../source/TortoiseGit_en.xml:14697
12229 msgid "What TortoiseGit does is to copy all files to the new location while showing you the progress of the operation. Unversioned files/folders can optionally be exported too."
12233 #: ../source/TortoiseGit_en.xml:14702
12234 msgid "In both cases, if <guilabel>Omit externals</guilabel> is checked, use the <literal>--ignore-externals</literal> switch."
12238 #: ../source/TortoiseGit_en.xml:14710
12242 "svn switch --relocate From_URL To_URL\n"
12246 #: ../source/TortoiseGit_en.xml:14715
12247 msgid "Create Repository Here"
12251 #: ../source/TortoiseGit_en.xml:14716
12255 "svnadmin create --fs-type fsfs PATH\n"
12257 "svnadmin create --fs-type bdb PATH\n"
12261 #: ../source/TortoiseGit_en.xml:14727
12262 msgid "If you selected a folder, TortoiseGit first scans it recursively for items which can be added."
12266 #: ../source/TortoiseGit_en.xml:14734
12270 "svn import -m LogMessage PATH URL\n"
12274 #: ../source/TortoiseGit_en.xml:14744
12278 "svn blame -r N:M -v PATH\n"
12279 "svn log -r N:M PATH\n"
12283 #: ../source/TortoiseGit_en.xml:14748
12284 msgid "If you use TortoiseBlame to view the blame info, the file log is also required to show log messages in a tooltip. If you view blame as a text file, this information is not required."
12288 #: ../source/TortoiseGit_en.xml:14756
12289 msgid "Add to Ignore List"
12293 #: ../source/TortoiseGit_en.xml:14757
12297 "svn propget svn:ignore PATH > tempfile\n"
12298 "{edit new ignore item into tempfile}\n"
12299 "svn propset svn:ignore -F tempfile PATH\n"
12303 #: ../source/TortoiseGit_en.xml:14762
12304 msgid "Because the svn:ignore property is often a multi-line value, it is shown here as being changed via a text file rather than directly on the command line."
12308 #: ../source/TortoiseGit_en.xml:14770
12312 "svn diff PATH > patch-file\n"
12316 #: ../source/TortoiseGit_en.xml:14773
12317 msgid "TortoiseGit creates a patch file in unified diff format by comparing the working copy with its BASE version."
12321 #: ../source/TortoiseGit_en.xml:14780
12322 msgid "Applying patches is a tricky business unless the patch and working copy are at the same revision. Luckily for you, you can use TortoiseMerge, which has no direct equivalent in Git."
12326 #: ../source/TortoiseGit_en.xml:14794
12327 msgid "Implementation Details"
12331 #: ../source/TortoiseGit_en.xml:14796
12332 msgid "This appendix contains a more detailed discussion of the implementation of some of TortoiseGit's features."
12336 #: ../source/TortoiseGit_en.xml:14804
12337 msgid "overlay priority"
12341 #: ../source/TortoiseGit_en.xml:14809
12342 msgid "Every file and folder has a Git status value as reported by the Git library. In the command line client, these are represented by single letter codes, but in TortoiseGit they are shown graphically using the icon overlays. Because the number of overlays is very limited, each overlay may represent one of several status values."
12346 #: ../source/TortoiseGit_en.xml:14817
12347 msgid "<graphic fileref=\"images/ConflictIcon.png\"/> The <emphasis>Conflicted</emphasis> overlay is used to represent the <literal>conflicted</literal> state, where an update or switch results in conflicts between local changes and changes downloaded from the repository. It is also used to indicate the <literal>obstructed</literal> state, which can occur when an operation is unable to complete."
12351 #: ../source/TortoiseGit_en.xml:14826
12352 msgid "<graphic fileref=\"images/ModifiedIcon.png\"/> The <emphasis>Modified</emphasis> overlay represents the <literal>modified</literal> state, where you have made local modifications, the <literal>merged</literal> state, where changes from the repository have been merged with local changes, and the <literal>replaced</literal> state, where a file has been deleted and replaced by another different file with the same name."
12356 #: ../source/TortoiseGit_en.xml:14836
12357 msgid "<graphic fileref=\"images/DeletedIcon.png\"/> The <emphasis>Deleted</emphasis> overlay represents the <literal>deleted</literal> state, where an item is scheduled for deletion, or the <literal>missing</literal> state, where an item is not present. Naturally an item which is missing cannot have an overlay itself, but the parent folder can be marked if one of its child items is missing."
12361 #: ../source/TortoiseGit_en.xml:14845
12362 msgid "<graphic fileref=\"images/AddedIcon.png\"/> The <emphasis>Added</emphasis> overlay is simply used to represent the <literal>added</literal> status when an item has been added to version control."
12366 #: ../source/TortoiseGit_en.xml:14851
12367 msgid "<graphic fileref=\"images/InGitIcon.png\"/> The <emphasis>In Git</emphasis> overlay is used to represent an item which is in the <literal>normal</literal> state, or a versioned item whose state is not yet known. Because TortoiseGit uses a background caching process to gather status, it may take a few seconds before the overlay updates."
12371 #: ../source/TortoiseGit_en.xml:14860
12372 msgid "<graphic fileref=\"images/ReadOnlyIcon.png\"/> The <emphasis>Needs Lock</emphasis> overlay is used to indicate when a file has the <literal>svn:needs-lock</literal> property set. For working copies which were created using Git 1.4.0 and later, the <literal>svn:needs-lock</literal> status is cached locally by Git and this is used to determine when to show this overlay. For working copies which are in pre-1.4.x format, TortoiseGit shows this overlay when the file has read-only status. Note that Git automatically upgrades working copies when you update them, although the caching of the <literal>svn:needs-lock</literal> property may not happen until the file itself is updated."
12376 #: ../source/TortoiseGit_en.xml:14874
12377 msgid "<graphic fileref=\"images/LockedIcon.png\"/> The <emphasis>Locked</emphasis> overlay is used when the local working copy holds a lock for that file."
12381 #: ../source/TortoiseGit_en.xml:14879
12382 msgid "<graphic fileref=\"images/IgnoredIcon.png\"/> The <emphasis>Ignored</emphasis> overlay is used to represent an item which is in the <literal>ignored</literal> state, either due to a global ignore pattern, or the <literal>svn:ignore</literal> property of the parent folder. This overlay is optional."
12386 #: ../source/TortoiseGit_en.xml:14887
12387 msgid "<graphic fileref=\"images/UnversionedIcon.png\"/> The <emphasis>Unversioned</emphasis> overlay is used to represent an item which is in the <literal>unversioned</literal> state. This is an item in a versioned folder, but which is not under version control itself. This overlay is optional."
12391 #: ../source/TortoiseGit_en.xml:14895
12392 msgid "If an item has Git status <literal>none</literal> (the item is not within a working copy) then no overlay is shown. If you have chosen to disable the <emphasis>Ignored</emphasis> and <emphasis>Unversioned</emphasis> overlays then no overlay will be shown for those files either."
12396 #: ../source/TortoiseGit_en.xml:14902
12397 msgid "An item can only have one Git status value. For example a file could be locally modified and it could be marked for deletion at the same time. Git returns a single status value - in this case <literal>deleted</literal>. Those priorities are defined within Git itself."
12401 #: ../source/TortoiseGit_en.xml:14909
12402 msgid "When TortoiseGit displays the status recursively (the default setting), each folder displays an overlay reflecting its own status and the status of all its children. In order to display a single <emphasis>summary</emphasis> overlay, we use the priority order shown above to determine which overlay to use, with the <emphasis>Conflicted</emphasis> overlay taking highest priority."
12406 #: ../source/TortoiseGit_en.xml:14918
12407 msgid "In fact, you may find that not all of these icons are used on your system. This is because the number of overlays allowed by Windows is limited to 15. Windows uses 4 of those, and the remaining 11 can be used by other applications. If there are not enough overlay slots available, TortoiseGit tries to be a <quote>Good Citizen (TM)</quote> and limits its use of overlays to give other apps a chance."
12411 #: ../source/TortoiseGit_en.xml:14929
12412 msgid "<emphasis>Normal</emphasis>, <emphasis>Modified</emphasis> and <emphasis>Conflicted</emphasis> are always loaded and visible."
12416 #: ../source/TortoiseGit_en.xml:14937
12417 msgid "<emphasis>Deleted</emphasis> is loaded if possible, but falls back to <emphasis>Modified</emphasis> if there are not enough slots."
12421 #: ../source/TortoiseGit_en.xml:14944
12422 msgid "<emphasis>Read-Only</emphasis> is loaded if possible, but falls back to <emphasis>Normal</emphasis> if there are not enough slots."
12426 #: ../source/TortoiseGit_en.xml:14951
12427 msgid "<emphasis>Locked</emphasis> is only loaded if there are fewer than 13 overlays already loaded. It falls back to <emphasis>Normal</emphasis> if there are not enough slots."
12431 #: ../source/TortoiseGit_en.xml:14959
12432 msgid "<emphasis>Added</emphasis> is only loaded if there are fewer than 14 overlays already loaded. It falls back to <emphasis>Modified</emphasis> if there are not enough slots."
12436 #: ../source/TortoiseGit_en.xml:14970
12437 msgid "Securing Svnserve using SSH"
12441 #: ../source/TortoiseGit_en.xml:14972
12442 msgid "This section provides a step-by-step guide to setting up Git and TortoiseGit to use the <literal>svn+ssh</literal> protocol. If you already use authenticated SSH connections to login to your server, then you are already there and you can find more detail in the Git book. If you are not using SSH but would like to do so to protect your Git installation, this guide gives a simple method which does not involve creating a separate SSH user account on the server for every Git user."
12446 #: ../source/TortoiseGit_en.xml:14982
12447 msgid "In this implementation we create a single SSH user account for all Git users, and use different authentication keys to differentiate between the real Git users."
12451 #: ../source/TortoiseGit_en.xml:14987
12452 msgid "In this appendix we assume that you already have the Git tools installed, and that you have created a repository as detailed elsewhere in this manual. Note that you should <emphasis>not</emphasis> start svnserve as a service or daemon when used with SSH."
12456 #: ../source/TortoiseGit_en.xml:14993
12457 msgid "Much of the information here comes from a tutorial provided by Marc Logemann, which can be found at <ulink url=\"http://www.logemann.org/2007/03/13/Git-TortoiseGit-ssh-howto/\"><citetitle>www.logemann.org</citetitle></ulink> Additional information on setting up a Windows server was provided by Thorsten Müller. Thanks guys!"
12461 #: ../source/TortoiseGit_en.xml:15004
12462 msgid "Setting Up a Linux Server"
12466 #: ../source/TortoiseGit_en.xml:15005
12468 "You need to have SSH enabled on the server, and here we assume that you will be using OpenSSH. On most distributions this will already be installed. To find out, type: <screen>\n"
12469 "ps xa | grep sshd\n"
12470 "</screen> and look for ssh jobs."
12474 #: ../source/TortoiseGit_en.xml:15014
12475 msgid "One point to note is that if you build Git from source and do not provide any argument to <filename>./configure</filename>, Git creates a <filename>bin</filename> directory under <filename>/usr/local</filename> and places its binaries there. If you want to use tunneling mode with SSH, you have to be aware that the user logging in via SSH needs to execute the svnserve program and some other binaries. For this reason, either place <filename>/usr/local/bin</filename> into the <literal>PATH</literal> variable or create symbolic links of your binaries to the <filename>/usr/sbin</filename> directory, or to any other directory which is commonly in the <literal>PATH</literal>."
12479 #: ../source/TortoiseGit_en.xml:15027
12481 "To check that everything is OK, login in as the target user with SSH and type: <screen>\n"
12483 "</screen> This command should tell you if svnserve is reachable."
12487 #: ../source/TortoiseGit_en.xml:15035
12489 "Create a new user which we will use to access the svn repository: <screen>\n"
12490 "useradd -m svnuser\n"
12491 "</screen> Be sure to give this user full access rights to the repository."
12495 #: ../source/TortoiseGit_en.xml:15044
12496 msgid "Setting Up a Windows Server"
12500 #: ../source/TortoiseGit_en.xml:15045
12501 msgid "Install Cygwin SSH daemon as described here: <ulink url=\"http://pigtail.net/LRP/printsrv/cygwin-sshd.html\"><citetitle>http://pigtail.net/LRP/printsrv/cygwin-sshd.html</citetitle></ulink>"
12505 #: ../source/TortoiseGit_en.xml:15051
12506 msgid "Create a new Windows user account <literal>svnuser</literal> which we will use to access the repository. Be sure to give this user full access rights to the repository."
12510 #: ../source/TortoiseGit_en.xml:15056
12512 "If there is no password file yet then create one from the Cygwin console using: <screen>\n"
12513 "mkpasswd -l > /etc/passwd\n"
12518 #: ../source/TortoiseGit_en.xml:15064
12519 msgid "SSH Client Tools for use with TortoiseGit"
12523 #: ../source/TortoiseGit_en.xml:15065
12524 msgid "Grab the tools we need for using SSH on the windows client from this site: <ulink url=\"http://www.chiark.greenend.org.uk/~sgtatham/putty/\"><citetitle>http://www.chiark.greenend.org.uk/~sgtatham/putty/</citetitle></ulink> Just go to the download section and get <filename>Putty</filename>, <filename>Plink</filename>, <filename>Pageant</filename> and <filename>Puttygen</filename>."
12528 #: ../source/TortoiseGit_en.xml:15078
12529 msgid "Creating OpenSSH Certificates"
12533 #: ../source/TortoiseGit_en.xml:15079
12534 msgid "The next step is to create a key pair for authentication. There are two possible ways to create keys. The first is to create the keys with PuTTYgen on the client, upload the public key to your server and use the private key with PuTTY. The other is to create the key pair with the OpenSSH tool ssh-keygen, download the private key to your client and convert the private key to a PuTTY-style private key."
12538 #: ../source/TortoiseGit_en.xml:15089
12539 msgid "Create Keys using ssh-keygen"
12543 #: ../source/TortoiseGit_en.xml:15090
12545 "Login to the server as <literal>root</literal> or <literal>svnuser</literal> and type: <screen>\n"
12546 "ssh-keygen -b 1024 -t dsa -N passphrase -f keyfile\n"
12547 "</screen> substituting a real pass-phrase (which only you know) and key file. We just created a SSH2 DSA key with 1024 bit key-phrase. If you type <screen>\n"
12549 "</screen> you will see two files, <filename>keyfile</filename> and <filename>keyfile.pub</filename>. As you might guess, the <filename>.pub</filename> file is the public key file, the other is the private one."
12553 #: ../source/TortoiseGit_en.xml:15107
12555 "Append the public key to those in the <filename>.ssh</filename> folder within the <literal>svnuser</literal> home directory: <screen>\n"
12556 "cat keyfile.pub >> /home/svnuser/.ssh/authorized_keys\n"
12561 #: ../source/TortoiseGit_en.xml:15114
12562 msgid "In order to use the private key we generated, we have to convert it to a putty format. This is because the private key file format is not specified by a standards body. After you download the private key file to your client PC, start PuTTYgen and use <menuchoice><guimenu>Conversions</guimenu><guimenuitem>Import key</guimenuitem></menuchoice>. Browse to your file <filename>keyfile</filename> which you got from the server the passphrase you used when creating the key. Finally click on <guibutton>Save private key</guibutton> and save the file as <filename>keyfile.PPK</filename>."
12566 #: ../source/TortoiseGit_en.xml:15131
12567 msgid "Create Keys using PuTTYgen"
12571 #: ../source/TortoiseGit_en.xml:15132
12573 "Use PuTTYgen to generate a public-key/private-key pair and save it. Copy the public key to the server and append it to those in the <filename>.ssh</filename> folder within the <literal>svnuser</literal> home directory: <screen>\n"
12574 "cat keyfile.pub >> /home/svnuser/.ssh/authorized_keys\n"
12579 #: ../source/TortoiseGit_en.xml:15144
12580 msgid "Test using PuTTY"
12584 #: ../source/TortoiseGit_en.xml:15145
12585 msgid "To test the connection we will use PuTTY. Start the program and on the <guilabel>Session</guilabel> tab set the hostname to the name or IP address of your server, the protocol to SSH and save the session as <literal>SvnConnection</literal> or whatever name you prefer. On the <guilabel>SSH</guilabel> tab set the preferred SSH protocol version to 2 and from <guilabel>Auth</guilabel> set the full path to the <literal>.PPK</literal> private key file you converted earlier. Go back to the <guilabel>Sessions</guilabel> tab and hit the <guilabel>Save</guilabel> button. You will now see <literal>SvnConnection</literal> in the list of saved sessions."
12589 #: ../source/TortoiseGit_en.xml:15158
12590 msgid "Click on <guilabel>Open</guilabel> and you should see a telnet style login prompt. Use <literal>svnuser</literal> as the user name and if all is well you should connect directly without being prompted for a password."
12594 #: ../source/TortoiseGit_en.xml:15164
12596 "You may need to edit <filename>/etc/sshd_config</filename> on the server. Edit lines as follows and restart the SSH service afterwards. <screen>\n"
12597 "PubkeyAuthentication yes\n"
12598 "PasswordAuthentication no\n"
12599 "PermitEmptyPasswords no\n"
12600 "ChallengeResponseAuthentication no\n"
12605 #: ../source/TortoiseGit_en.xml:15176
12606 msgid "Testing SSH with TortoiseGit"
12610 #: ../source/TortoiseGit_en.xml:15177
12611 msgid "So far we have only tested that you can login using SSH. Now we need to make sure that the SSH connection can actually run svnserve. On the server modify <filename>/home/svnuser/.ssh/authorized_keys</filename> as follows to allow many Git authors to use the same system account, <literal>svnuser</literal>. Note that every Git author uses the same login but a different authentication key, thus you have to add one line for every author."
12615 #: ../source/TortoiseGit_en.xml:15186
12617 "Note: This is all on one very long line. <screen>\n"
12618 "command=\"svnserve -t -r <ReposRootPath> --tunnel-user=<author>\",\n"
12619 " no-port-forwarding,no-agent-forwarding,no-X11-forwarding,\n"
12620 " no-pty ssh-rsa <PublicKey> <Comment>\n"
12621 "</screen> There are several values that you need to set according to your setup."
12625 #: ../source/TortoiseGit_en.xml:15195
12626 msgid "<literal><ReposRootPath></literal> should be replaced with the path to the directory containing your repositories. This avoids the need to specify full server paths within URLs. Note that you must use forward slashes even on a Windows server, e.g. <filename>c:/svn/reposroot</filename>. In the examples below we assume that you have a repository folder within the repository root called <filename>repos</filename>."
12630 #: ../source/TortoiseGit_en.xml:15204
12631 msgid "<literal><author></literal> should be replaced with the svn author that you want to be stored on commit. This also allows svnserve to use its own access rights within <filename>svnserve.conf</filename>."
12635 #: ../source/TortoiseGit_en.xml:15209
12636 msgid "<literal><PublicKey></literal> should be replaced with the public key that you generated earlier."
12640 #: ../source/TortoiseGit_en.xml:15213
12641 msgid "<literal><Comment></literal> can be any comment you like, but it is useful for mapping an svn author name to the person's real name."
12645 #: ../source/TortoiseGit_en.xml:15217
12647 "Right click on any folder in Windows Explorer and select <menuchoice><guimenu>TortoiseGit</guimenu><guimenuitem>Repo-Browser</guimenuitem></menuchoice>. You will be prompted to enter a URL, so enter one in this form: <screen>\n"
12648 "svn+ssh://svnuser@SvnConnection/repos\n"
12649 "</screen> What does this URL mean? The Schema name is <literal>svn+ssh</literal> which tells TortoiseGit how to handle the requests to the server. After the double slash, you specify the user to connect to the server, in our case <literal>svnuser</literal>. After the <literal>@</literal> we supply our PuTTY session name. This session name contains all details like where to find the private key and the server's IP or DNS. Lastly we have to provide the path to the repository, relative to the repository root on the server, as specified in the <filename>authorized_keys</filename> file."
12653 #: ../source/TortoiseGit_en.xml:15237
12654 msgid "Click on <guibutton>OK</guibutton> and you should be able to browse the repository content. If so you now have a running SSH tunnel in conjunction with TortoiseGit."
12658 #: ../source/TortoiseGit_en.xml:15242
12659 msgid "Note that by default TortoiseGit uses its own version of Plink to connect. This avoids a console window popping up for every authentication attempt, but it also means that there is nowhere for error messages to appear. If you receive the error <quote>Unable to write to standard output</quote>, you can try specifying Plink as the client in TortoiseGit's network settings. This will allow you to see the real error message generated by Plink."
12663 #: ../source/TortoiseGit_en.xml:15252
12664 msgid "SSH Configuration Variants"
12668 #: ../source/TortoiseGit_en.xml:15253
12670 "One way to simplify the URL in TortoiseGit is to set the user inside the PuTTY session. For this you have to load your already defined session <literal>SvnConnection</literal> in PuTTY and in the <guilabel>Connection</guilabel> tab set <guilabel>Auto login user</guilabel> to the user name, e.g. <literal>svnuser</literal>. Save your PuTTY session as before and try the following URL inside TortoiseGit: <screen>\n"
12671 "svn+ssh://SvnConnection/repos\n"
12672 "</screen> This time we only provide the PuTTY session <literal>SvnConnection</literal> to the SSH client TortoiseGit uses (TortoisePlink.exe). This client will check the session for all necessary details."
12676 #: ../source/TortoiseGit_en.xml:15268
12677 msgid "Many people like to use Pageant for storing all their keys. Because a PuTTY session is capable of storing a key, you don't always need Pageant. But imagine you want to store keys for several different servers; in that case you would have to edit the PuTTY session over and over again, depending on the server you are trying to connect with. In this situation Pageant makes perfect sense, because when PuTTY, Plink, TortoisePlink or any other PuTTY-based tool is trying to connect to an SSH server, it checks all private keys that Pageant holds to initiate the connection."
12681 #: ../source/TortoiseGit_en.xml:15279
12682 msgid "For this task, simply run Pageant and add the private key. It should be the same private key you defined in the PuTTY session above. If you use Pageant for private key storage, you can delete the reference to the private key file in your saved PuTTY session. You can add more keys for other servers, or other users of course."
12686 #: ../source/TortoiseGit_en.xml:15286
12687 msgid "If you don't want to repeat this procedure after every reboot of your client, you should place Pageant in the auto-start group of your Windows installation. You can append the keys with complete paths as command line arguments to Pageant.exe"
12691 #: ../source/TortoiseGit_en.xml:15292
12693 "The last way to connect to an SSH server is simply by using this URL inside TortoiseGit: <screen>\n"
12694 "svn+ssh://svnuser@100.101.102.103/repos\n"
12695 "svn+ssh://svnuser@mydomain.com/repos\n"
12696 "</screen> As you can see, we don't use a saved PuTTY session but an IP address (or domain name) as the connection target. We also supply the user, but you might ask how the private key file will be found. Because TortoisePlink.exe is just a modified version of the standard Plink tool from the PuTTY suite, TortoiseGit will also try all the keys stored in Pageant."
12700 #: ../source/TortoiseGit_en.xml:15312
12705 #: ../source/TortoiseGit_en.xml:15316
12706 msgid "A Git command that is used to add a file or directory to your working copy. The new items are added to the repository when you commit."
12710 #: ../source/TortoiseGit_en.xml:15324
12711 msgid "BASE revision"
12715 #: ../source/TortoiseGit_en.xml:15326
12716 msgid "The current base revision of a file or folder in your <emphasis>working copy</emphasis>. This is the revision the file or folder was in, when the last checkout, update or commit was run. The BASE revision is normally not equal to the HEAD revision."
12720 #: ../source/TortoiseGit_en.xml:15337
12721 msgid "This command is for text files only, and it annotates every line to show the repository revision in which it was last changed, and the author who made that change. Our GUI implementation is called TortoiseBlame and it also shows the commit date/time and the log message when you hover the mouse of the revision number."
12725 #: ../source/TortoiseGit_en.xml:15347
12730 #: ../source/TortoiseGit_en.xml:15349
12731 msgid "Berkeley DB. A well tested database backend for repositories, that cannot be used on network shares. Default for pre 1.2 repositories."
12735 #: ../source/TortoiseGit_en.xml:15356
12740 #: ../source/TortoiseGit_en.xml:15358
12741 msgid "A term frequently used in revision control systems to describe what happens when development forks at a particular point and follows 2 separate paths. You can create a branch off the main development line so as to develop a new feature without rendering the main line unstable. Or you can branch a stable release to which you make only bugfixes, while new developments take place on the unstable trunk. In Git a branch is implemented as a <quote>cheap copy</quote>."
12745 #: ../source/TortoiseGit_en.xml:15373
12746 msgid "A Git command which creates a local working copy in an empty directory by downloading versioned files from the repository."
12750 #: ../source/TortoiseGit_en.xml:15382
12751 msgid "To quote from the Git book: <quote> Recursively clean up the working copy, removing locks and resuming unfinished operations. If you ever get a <emphasis>working copy locked</emphasis> error, run this command to remove stale locks and get your working copy into a usable state again. </quote> Note that in this context <emphasis>lock</emphasis> refers to local filesystem locking, not repository locking."
12755 #: ../source/TortoiseGit_en.xml:15399
12756 msgid "This Git command is used to pass the changes in your local working copy back into the repository, creating a new repository revision."
12760 #: ../source/TortoiseGit_en.xml:15407
12765 #: ../source/TortoiseGit_en.xml:15409
12766 msgid "When changes from the repository are merged with local changes, sometimes those changes occur on the same lines. In this case Git cannot automatically decide which version to use and the file is said to be in conflict. You have to edit the file manually and resolve the conflict before you can commit any further changes."
12770 #: ../source/TortoiseGit_en.xml:15419
12775 #: ../source/TortoiseGit_en.xml:15421
12776 msgid "In a Git repository you can create a copy of a single file or an entire tree. These are implemented as <quote>cheap copies</quote> which act a bit like a link to the original in that they take up almost no space. Making a copy preserves the history of the item in the copy, so you can trace changes made before the copy was made."
12780 #: ../source/TortoiseGit_en.xml:15433
12781 msgid "When you delete a versioned item (and commit the change) the item no longer exists in the repository after the commited revision. But of course it still exists in earlier repository revisions, so you can still access it. If necessary, you can copy a deleted item and <quote>resurrect</quote> it complete with history."
12785 #: ../source/TortoiseGit_en.xml:15445
12786 msgid "Shorthand for <quote>Show Differences</quote>. Very useful when you want to see exactly what changes have been made."
12790 #: ../source/TortoiseGit_en.xml:15454
12791 msgid "This command produces a copy of a versioned folder, just like a working copy, but without the local <literal>.svn</literal> folders."
12795 #: ../source/TortoiseGit_en.xml:15462
12800 #: ../source/TortoiseGit_en.xml:15464
12801 msgid "FS Filesystem. A proprietary Git filesystem backend for repositories. Can be used on network shares. Default for 1.2 and newer repositories."
12805 #: ../source/TortoiseGit_en.xml:15473
12806 msgid "Group policy object"
12810 #: ../source/TortoiseGit_en.xml:15479
12811 msgid "HEAD revision"
12815 #: ../source/TortoiseGit_en.xml:15481
12816 msgid "The latest revision of a file or folder in the <emphasis>repository</emphasis>."
12820 #: ../source/TortoiseGit_en.xml:15489
12821 msgid "Git command to import an entire folder hierarchy into the repository in a single revision."
12825 #: ../source/TortoiseGit_en.xml:15498
12826 msgid "When you take out a lock on a versioned item, you mark it in the repository as uncommittable, except from the working copy where the lock was taken out."
12830 #: ../source/TortoiseGit_en.xml:15506
12835 #: ../source/TortoiseGit_en.xml:15508
12836 msgid "Show the revision history of a file or folder. Also known as <quote>History</quote>."
12840 #: ../source/TortoiseGit_en.xml:15515
12845 #: ../source/TortoiseGit_en.xml:15517
12846 msgid "Show the revision history of a file or folder. Also known as <quote>Log</quote>."
12850 #: ../source/TortoiseGit_en.xml:15526
12851 msgid "The process by which changes from the repository are added to your working copy without disrupting any changes you have already made locally. Sometimes these changes cannot be reconciled automatically and the working copy is said to be in conflict."
12855 #: ../source/TortoiseGit_en.xml:15532
12856 msgid "Merging happens automatically when you update your working copy. You can also merge specific changes from another branch using TortoiseGit's Merge command."
12860 #: ../source/TortoiseGit_en.xml:15540
12865 #: ../source/TortoiseGit_en.xml:15542
12866 msgid "If a working copy has changes to text files only, it is possible to use Git's Diff command to generate a single file summary of those changes in Unified Diff format. A file of this type is often referred to as a <quote>Patch</quote>, and it can be emailed to someone else (or to a mailing list) and applied to another working copy. Someone without commit access can make changes and submit a patch file for an authorized committer to apply. Or if you are unsure about a change you can submit a patch for others to review."
12870 #: ../source/TortoiseGit_en.xml:15555
12875 #: ../source/TortoiseGit_en.xml:15557
12876 msgid "In addition to versioning your directories and files, Git allows you to add versioned metadata - referred to as <quote>properties</quote> to each of your versioned directories and files. Each property has a name and a value, rather like a registry key. Git has some special properties which it uses internally, such as <literal>svn:eol-style</literal>. TortoiseGit has some too, such as <literal>tsvn:logminsize</literal>. You can add your own properties with any name and value you choose."
12880 #: ../source/TortoiseGit_en.xml:15572
12881 msgid "If your repository moves, perhaps because you have moved it to a different directory on your server, or the server domain name has changed, you need to <quote>relocate</quote> your working copy so that its repository URLs point to the new location."
12885 #: ../source/TortoiseGit_en.xml:15578
12886 msgid "Note: you should only use this command if your working copy is referring to the same location in the same repository, but the repository itself has moved. In any other circumstance you probably need the <quote>Switch</quote> command instead."
12890 #: ../source/TortoiseGit_en.xml:15587
12895 #: ../source/TortoiseGit_en.xml:15589
12896 msgid "A repository is a central place where data is stored and maintained. A repository can be a place where multiple databases or files are located for distribution over a network, or a repository can be a location that is directly accessible to the user without having to travel across a network."
12900 #: ../source/TortoiseGit_en.xml:15600
12901 msgid "When files in a working copy are left in a conflicted state following a merge, those conflicts must be sorted out by a human using an editor (or perhaps TortoiseMerge). This process is referred to as <quote>Resolving Conflicts</quote>. When this is complete you can mark the conflicted files as being resolved, which allows them to be committed."
12905 #: ../source/TortoiseGit_en.xml:15612
12906 msgid "Git keeps a local <quote>pristine</quote> copy of each file as it was when you last updated your working copy. If you have made changes and decide you want to undo them, you can use the <quote>revert</quote> command to go back to the pristine copy."
12910 #: ../source/TortoiseGit_en.xml:15621
12915 #: ../source/TortoiseGit_en.xml:15623
12916 msgid "Every time you commit a set of changes, you create one new <quote>revision</quote> in the repository. Each revision represents the state of the repository tree at a certain point in its history. If you want to go back in time you can examine the repository as it was at revision N."
12920 #: ../source/TortoiseGit_en.xml:15630
12921 msgid "In another sense, a revision can refer to the set of changes that were made when that revision was created."
12925 #: ../source/TortoiseGit_en.xml:15637
12926 msgid "Revision Property (revprop)"
12930 #: ../source/TortoiseGit_en.xml:15639
12931 msgid "Just as files can have properties, so can each revision in the repository. Some special revprops are added automatically when the revision is created, namely: <literal>svn:date svn:author svn:log</literal> which represent the commit date/time, the committer and the log message respectively. These properties can be edited, but they are not versioned, so any change is permanent and cannot be undone."
12935 #: ../source/TortoiseGit_en.xml:15651
12940 #: ../source/TortoiseGit_en.xml:15653
12941 msgid "A frequently-used abbreviation for Git."
12945 #: ../source/TortoiseGit_en.xml:15656
12946 msgid "The name of the Git custom protocol used by the <quote>svnserve</quote> repository server."
12950 #: ../source/TortoiseGit_en.xml:15665
12951 msgid "Just as <quote>Update-to-revision</quote> changes the time window of a working copy to look at a different point in history, so <quote>Switch</quote> changes the space window of a working copy so that it points to a different part of the repository. It is particularly useful when working on trunk and branches where only a few files differ. You can switch your working copy between the two and only the changed files will be transferred."
12955 #: ../source/TortoiseGit_en.xml:15679
12956 msgid "This Git command pulls down the latest changes from the repository into your working copy, merging any changes made by others with local changes in the working copy."
12960 #: ../source/TortoiseGit_en.xml:15687
12961 msgid "Working Copy"
12965 #: ../source/TortoiseGit_en.xml:15689
12966 msgid "This is your local <quote>sandbox</quote>, the area where you work on the versioned files, and it normally resides on your local hard disk. You create a working copy by doing a <quote>Checkout</quote> from a repository, and you feed your changes back into the repository using <quote>Commit</quote>."
12969 #. Put one translator per line, in the form of NAME <EMAIL>.
12971 #: ../source/TortoiseGit_en.xml:0
12972 msgid "translator-credits"
12973 msgstr "سید محسن سجادی طبسی (mohsensajjadi@gmail.com)"
12975 #. Place the translation of 'translation' here.
12977 #: ../source/TortoiseGit_en.xml:0
12978 msgid "translator-translation"