Если у Вас есть такая крупная организация, тогда не передают под мандат единственный определенный SCM.
я уверен, что они все не работают над тем же кодом, и имело бы смысл позволять самим командам выбрать то, чем они являются самыми довольными.
(Вы, возможно, должны обеспечить некоторое обучение так понимание, как выбрать между Мерзавцем, SVN, некоторой внутренней унаследованной системой.)
посмотрите здесь :
В документации нет различать звонки BeginContainer / EndContainer и звонки в Graphics.Save и GraphicsRestore. Кроме того, есть несколько ошибок в документация. [например, GraphicsState утверждается неправильно будет использоваться BeginContainer]
В моем использовании BeginContainer / EndContainer выглядит как сохранить и восстановить текущий преобразовать. На самом деле это не спасает область отсечения как документация утверждает, и не может сохраните любые другие свойства в графические объекты.
С помощью функции «Сохранить / восстановить» я действительно смог сохранить / восстановить отсечение регион, текущее преобразование и др. настройки. Вроде бы, если не полный, более "полный", чем функции контейнера. Поэтому я подозревать производительность / полноту компромисс с двумя разными методов.
Я также сомневаюсь, что в документации правильно указано объекты GraphicsState (используемые Сохранить) хранятся в стеке как есть GraphicsContainer объекты (используются BeginContainer). Я подозреваю что GraphicsState нельзя даже размещать в стеке, но я не тестировал это гипотеза.
Метод сохранения графики Сохраняет текущее состояние этой графики и идентифицирует сохраненное состояние с помощью GraphicsState.
Graphics.BeginContainer Method Сохраняет графический контейнер с текущим состоянием этого объекта Graphics и открывает и использует новый графический контейнер.
Замечания
Вызов метода BeginContainer помещает информационные блоки в тот же стек, что и вызовы метода Сохранить метод . Так же, как вызов Restore соединен с вызовом Save , вызов метода EndContainer связан с вызовом метода BeginContainer .
Когда вы вызываете Restore , все информационные блоки, помещенные в стек (методом Save или методом BeginContainer ) после соответствующего вызова метода Save, удаляются из стека. Аналогичным образом, когда вы вызываете метод EndContainer , http://msdn.microsoft.com/en-us/library/system.drawing.graphics.save.aspx