Перейти к содержимому

System commit что это

  • автор:

System commit что это

Сообщения: 36410
Благодарности: 6659

Конфигурация компьютера
Ноутбук/нетбук: Lenovo ThinkPad W530 24385AU (i7-3740QM 2.7GHz, 24GB RAM, Samsung 840 Pro 256GB + HDD 750GB)
ОС: Windows 11 Pro x64
Прочее: На пенсии: HP Pavilion dv7t (17.3», i7-2630QM, HD 6770M 1Gb, 8Gb RAM)
  1. Если вы оставите размер файла подкачки по умолчанию на разделе по умолчанию, все будет прекрасно работать, и не будет болеть голова по поводу пунктов 2 — 5.

Цитата Марк Руссинович:
Цитата Марк Руссинович:

Так как предел для выделенной памяти устанавливается на основе того, сколько закрытой и pagefile-backed виртуальной памяти может быть одновременно выделено выполняющимся процессам, единственный способ правильно установить размер файла подкачки заключается в том, чтобы узнать, какой максимальный объем выделенной памяти может быть занят программами, которые вы часто запускаете одновременно. Если предел для выделенной памяти будет меньше этого значения, то ваши программы не смогут получить необходимую им виртуальную память и будут некорректно работать.

Так как же узнать, сколько выделенной памяти требуется вашей рабочей среде? На снимках экрана вы, возможно, заметили, что это число отслеживается Windows и Process Explorer показывает его: Peak Commit Charge.

Чтобы установить оптимальный размер для вашего файла подкачки, вы должны запустить все приложения, с которыми вы работаете одновременно, загрузить типичный для вас объем данных и посмотреть пиковое значения выделенной памяти (или же посмотреть это значение по прошествии некоторого времени, когда, по вашему мнению, будет достигнута максимальная загруженность памяти). В качестве минимального размера файла подкачки установите это значение, отняв от него размер установленной на вашей системе оперативной памяти (если получится отрицательное значения, выберите размер, позволяющий сохранить возможное количество отказов на минимальном уровне). Если вы хотите сохранить некоторый запас для потенциально больших расходов выделенной памяти, в качестве максимума установить это значение, умноженное на 2.

Цитата Марк Руссинович:

Выберите системный раздел. Установите переключатель Без файла подкачки и нажмите кнопку Задать. Система предупредит вас о невозможности записи отладочных данных (дампов памяти) при отсутствии файла подкачки примерно таким сообщением, как показано на рисунке ниже.

Нажмите Нет.

Затем установите переключатель Указать размер. Введите в поле Исходный размер значение равное или превышающее значение, указанное в качестве минимального для записи дампов памяти. Введите в поле Максимальный размер такое же значение, как в поле Исходный размер, и нажмите кнопку Задать. Расположение файла подкачки на системном разделе сконфигурировано.

Это сообщение посчитали полезным следующие участники:

Сообщения: 1185
Благодарности: 181

Конфигурация компьютера
Процессор: i5 3570 4.0
Материнская плата: MAXIMUS V GENE
Память: 8gb 1600(2400)Mhz TridentX G.Skill
HDD: Hitachi 2000gb,ssd Intel 330 60 Gb
Видеокарта: GV-N660OC-2GD
Звук: Realtek
Блок питания: Chieftec BPS-750C2
Монитор: Philips1907s 19″
ОС: Windows 10×64
Индекс производительности Windows: 7.9
Прочее: P5NE-SLI, E4400-3.0 КГц, Radeon EAX1600PRO 256Мб, Сorsair 2×2048-800Мгц

Цитата Efir:

Могу на примере объяснить один из возможных вариантов происходящего »

если можно. Efir,

Цитата Efir:

Могу на примере объяснить один из возможных вариантов происходящего, если кому-то интересно »

интересно. И нужно. А то в теме одно и тоже — удалить фп. уменьшить. переместить фп на компьютер врагу. сделать фп размером 1мб . и т.д

Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Сообщения: 1958
Благодарности: 306

severagent007,
. Фотошоперы, например не мучают своп.

они только создают свой временный файл с которым работают.
Это сообщение посчитали полезным следующие участники:

Сообщения: 283
Благодарности: 53

Конфигурация компьютера
Процессор: Intel Core i3 3220 3300@3535MHz
Материнская плата: MSI P67A-GD53(B3)
Память: Team Xtreem 2x4Gb 1600@2000MHz
HDD: SSD OCZ Agility 60Gb HDD Seagate 250Gb
Видеокарта: MSI GTX460 HAWK SLI
Блок питания: FSP Everest 800W
Монитор: DELL U2312HM 1920*1080
ОС: Windows 8.1 x64 Pro

Автор последнего диалога задавался вопросом, что такое доступная(available) память. Без технических подробностей, которые довольно таки сложны, память(озу), с точки зрения ее содержимого делится, на занятую, кэшированную, свободную и недоступную.

Занятая — это физически резидентное подмножество страниц, принадлежащее программному обеспечению. То бишь эта память выделена, ПО с ней работает, данные находятся в озу, а не в подкачке либо MMF файле.

Кэшированная память – это память, которая хранит недавно использованный программами контент, файлы например, либо файлы загруженные в озу суперфетчем. Память не является выделенной, но если программе понадобилось содержимое файла, который кэширован, операционной системе не придется осуществлять долгую операцию чтения с диска, ей всего лишь понадобится поправить пару структур и эта память вновь станет занятой и принадлежать программе. Есть детали, о них в другой раз.

Свободная память – это память, которая ни кому не передана и не содержит какого-либо полезного содержимого, либо обнулена.

Доступная память эта сумма памяти свободной + памяти кэшированной. Когда очередной программе нужна чистая память, операционная система выделяет ей эту память из свободной, то есть обнуленной. Если по какой-то причине обнуленной памяти не хватает, либо уже исчерпана, операционная система чистит кэшированную память и выделяет ее приложению.

Недоступная – эта та память, адреса для которой, заняты для адресации оборудования, либо сбойная память.

Немного теор. информации. С точки зрения выделения памяти, она может быть невыделенная, зарезервированная(reserve) и переданная(commited). Слово переданная идет из выражения передача физического хранилища. Системных хранилищ два, — озу и страничный файл(pagefile.sys). Объем этих 2-х хранилищ составляет счетчик Commit Limit. Счетчик Current Commit показывает текущее значение использования этих 2-х хранилищ данными, которые больше нигде разместить нельзя, это важно. Счетчики представляют системный комит(System Commit), то есть передача системных хранилищ. Существует и третий тип хранилища, проецируемые в память файлы(MMF). ММF файлом может выступать любой файл на диске, используемый ПО через механизм MMF. Подробнее о нем можно почитать википедию. Суть его заключается в том, что доступ к файлу осуществляется как к памяти. На некоторый непрерывный участок виртуального адресного пространства программы проецируется любой файл или часть и когда программа начинает читать\писать эту память, файл или часть не загружается целиком, а прозрачно для программы загружаются в озу только те страницы файла или части, к которым был доступ. Теперь самое сложноусваиваимое)). MMF файлы не входят в счетчик System Commit Limit, т.к. их может быть условно бесконечное множество. Те данные, которые сейчас загружены в озу как MMF, не входят в Current System Commit, так как сам файл является хранилищем. В случае, если память под данные, которые были загружены в озу из файла, как MMF, придется освободить операционной системе для кого то, то эти данные будут скинуты снова в этот файл, либо просто память будет отобрана и обнулена, если данные не изменялись(только чтение) и вновь будут прочитаны из файла при повторном доступе.
Поскольку содержимое MMF может быть и полностью загружено в озу, а commit такой памяти на системный commit не влияет, то можно исчерпать всю озу, при этом Current Commit может быть, например, в 2 раза меньше лимита и часто вводит людей в ступор. Но в этом ничего такого нет, т.к. всю ту исчерпанную озу можно скинуть опять в MMF хранилища, тем самым освободив для других нужд.

Пока писал этот пост, выяснилось, что в принципе нельзя точно сказать утечка у пользователя Villy2011 или нет, а также выснилось, что изложить этот сложнейший материал просто не получается)), да еще и простым языком.
Во вложении к посту есть программа testmem, с исходными кодами на си. Ее написал когда-то братуха, когда изучали memory management в венде. Она осуществляет несколько типов выделений памяти, объем которых можно указать в МБайтах. Исполняемых файлов 2, — 64-х разрядный для того, чтобы выделения памяти не были ограничены виртуальным адресным пространством и 32-х разрядный, чтобы показать как из-за нехватки виртуальных адресов может происходить утечка памяти, о которой была речь выше и которая может привести к ситуации как у Villy2011. Помимо testmem нужен будет еще Process Explorer и VmMap, а также установленный фиксированный размер страничного файла, чтобы система не увеличивала страничный файл, тем самым отодвигая Commit Limit.

1. Смотрим как растет Current System Commit при этом доступная(available) память остается прежней.
2. Смотрим как растет Current System Commit при этом доступная(available) память уменьшается.
3. Смотрим как уменьшается доступная(available) память при этом Current System Commit остается прежним.
4. Смотрим как данные по памяти testmem в программах, включяя VmMap, никак не меняются, хотя Current System Commit растет. Утечка.

Тест 1. Запускаем 64-х разрядный testmem, выбираем commit shared memory(pagefile), в поле объем вводим 1000Мб, жмем ок несколько раз и наблюдаем рост Current System Commit до того момента пока система не напишет нехватка памяти. Последний блок в зависимости от текущего выделения на вашей системе может быть не кратен 1000Мб, поэтому введите остаток.

Тест2. Запускаем 64-х разрядный testmem, выбираем commit and touch memory, в поле объем вводим 1000Мб, жмем ок и наблюдаем рост Current System Commit и уменьшение доступной памяти(рост Physical Memory)

Тест3. Запускаем любой testmem, выбираем commit shared memory(mapped file), в поле объем вводим 1000Мб, жмем один раз ок и наблюдаем уменьшение доступной памяти(рост Physical Memory) при неизменном Current System Commit.

Тест4. Запускаем 32-х разрядный testmem, выбираем commit shared memory(pagefile), потом запускаем VmMap и видим данные по памяти testmem. Нажимаем один раз ок, наблюдаем рост Current System Commit на этот объем, после чего обновляем VmMap и видим как появилось 1000МБ в поле Shereable. Снова нажимаем ок, снова наблюдаем рост Current System Commit на этот объем, после чего обновляем VmMap и видим что другого блока из 1000Мб не появилось. Можно нажать еще раз пока не дойдете до Commit Limit, но памяти так в программе и не появится. Это и есть утечка. Ловить такую очень сложно, точнее долго.

Что делает каждый из этих кусков кода по выделению памяти подробней расскажу в другой как-нить раз)

Последний раз редактировалось Efir, 04-01-2014 в 22:22 .

Sysadminium

Process Explorer и память. В этом уроке я покажу вам как наблюдать за расходованием памяти используя сторонний инструмент “Process Explorer”.

Оглавление скрыть

Process Explorer и память

Process Explorer выводит намного больше информации о физической и виртуальной памяти чем диспетчер задач. Для того чтобы открыть информацию по памяти откройте меню View, выберите команду System Information и перейдите на вкладку Memory:

Process Explorer

Графики

В открывшемся окне мы видим 2 графика:

  • System Commit — объем общей занятой физической памяти. Эта сумма занятой оперативной памяти и файла подкачки.
  • Physical Memory — объём занятой оперативной памяти, без учёта файла подкачки.

Из этого следует, что файл подкачки у меня занимает примерно 1,4 GB.

Отображаемые показатели

Ниже графиков вы можете увидеть обширную информацию по используемой памяти. Все показатели разбиты на определённые блоки, что делает обзор несколько удобнее.

Commit Charge

В этом блоке можно увидеть информацию по выделенной физической памяти (оперативной + swap). В этом блоке все показатели указаны в килобайтах.

  • Current. Текущее использование физической памяти. В диспетчере задач это выделенная память.
  • Limit. Сколько всего памяти можно выделить.
  • Peak. Сколько максимально потреблялось памяти в системе за то время, пока у вас был открыт Process Explorer.
  • Peak/Limit — это отношение пиковой нагрузки к общему объему физической памяти.
  • Current/Limit — отношение текущей нагрузки к общему объёму физической памяти.

Уже по этому блоку можно судить о том, хватает ли системе памяти.

Phisical Memory

В этом блоке уже не учитывается файл подкачки, а только оперативная память. Точно так же все значения в килобайтах.

  • Total. Общий объем оперативной памяти в системе.
  • Available. Объем доступной памяти. Здесь суммируется объем свободной памяти и той памяти которую можно быстро сбросить и использовать, например кэш.
  • Cache WS (Working Set). Это кэш файловой системы. То есть тут файлы, которые вы читали и система на всякий случай хранит их в оперативной памяти. Он может быть быстро сброшен, если системе не будет хватать оперативной памяти.
  • Kernel WS. Рабочий набор ядра. То есть память с которым сейчас работает ядро.
  • Driver WS. Рабочий набор драйверов.

Kernel Memory

Здесь дана информация по выгружаемому и невыгружаемому пулу ядра.

  • Paged WS — объем реально занятой оперативной памяти под выгружаемый пул.
  • Paged Virtual — объем выделенной виртуальной памяти под выгружаемый пул. По-видимому диспетчер задач показывает выгружаемый пул основываясь на этом параметре.
  • Paged Limit — лимит выгружаемого пула. Примерно равен 16 ТБ.
  • Nonpaged — объем невыгружаемого пула.
  • Nonpaged Limit — лимит невыгружаемого пула. Примерно равен 16 GБ.

Эти лимиты ограничены операционной системой, но по факту будет действовать физическое ограничение. Система просто не сможет выделить 16 TB памяти, так как у меня даже на диске такого объёма нет.

Paging

В этом блоке можно наблюдать процесс свопинга. То есть когда у вас не хватает памяти и данные сбрасываются в файл подкачки (swap). Здесь данные отображаются в виде дельты, то есть количество за определённый период, который равен периоду обновления программы.

  • Page Fault Delta — число ошибок страниц. Когда процесс хочет записать данные, то он обращается к страницам виртуальной памяти. И если они не связаны с физической памятью возникает ошибка Page Fault. В этом нет ничего плохого. Просто виртуальная страница свяжется с физической, а затем процесс повторит попытку записи.
  • Page Read Delta — число прочитанных страниц из файла подкачки. Это уже более серьёзный показатель, так как здесь считаются страницы которые были прочитаны из файла подкачки. Если это число больше 200 в секунду, значит система сильно свопит и ей не хватает оперативной памяти.
  • Paging File Write Delta — число страниц помещённых в файл подкачки. Также важный показатель. Показывает сколько страниц было помещено в файл подкачки за единицу времени.
  • Mapped File Write Delta — число страниц которые были записаны для сохранения так называемых замапленных файлов. Это могут быть .exe или .dll файлы, которые были помещены в оперативную память.

Paging List

Этот блок разбирать пока не буду. Он будет описан в уроке посвящённом физическим страницам памяти. У физических страниц есть свои состояния и в этом блоке они описаны. В общем читайте дальше и все станет понятнее.

System commit что это

Выявление узких мест, связанных с работой памяти

Подкачка страниц (paging)

Дата и код в памяти разделены на страницы. На Intel компьютерах page = 4096 bytes. Каждая страница памяти хратится в страничном фрейме (page frame)

Подкачка страниц (paging) – это процесс перемещения страниц между физической и виртуальной памятью.

Чрезмерное перемещение страниц с диска в RAM и наоборот может очень сильно загрузить процессор. Эти проблемы легко могут выглядеть как проблемы с процессором или с диском.

Virtual Memory System

Комбинация из физической памяти (RAM), кэша файловой системы и виртуальной памяти на диске (pagefile.sys) называется Memory Subsystem.

Код и данные в RAM, которые не используются активно сбрасываются в виртуальную память на диск. Если на компьютере не хватает RAM, то обмен с виртуальной памятью происходит чаще, что сильно замедляет работу компьютера.

  • Зарезервированная память (reserved memory): набор непрерывных адресов, которые Диспетчер виртуальной памяти (VMM) выделяет для процесса, но не учитывает в общей квоте памяти процесса др тех пор, пока она не будет фактически использована. Когда процессу необходимо произвести запись в память, ему выделяется нужный объем из зарезервированной памяти.
  • Выделенная память (committed memory): память, зарезервированная в файле pagefile.sys, на случай, когда потребуется выгрузить содержимое памяти на диск. Объем выделенной памяти процесса характеризует фактически потребляемый им объем памяти. Объем выделенной памяти ограничен размером файла подкачки. Предельный объем выделенной памяти в системе (commit limit) определяется тем, какой объем памяти можно выделить процессам без увеличения размеров файла подкачки.
  • Available Memory (свободная): память не являющаяся ни зарезервированной ни запомненной.

Пулы памяти (memory pools)

Объекты, создаваемые и используемые приложениями и операционной системой, хранятся в так называемых пулах памяти.

  • Перемещаемый или нерезидентный пул (paged pool) содержит объекты, которые можно при необходимости выгрузить на диск– это виртуальная память.
  • Неперемещаемый или резидентный пул (non-paged pool) — данные или код, которые должны остаться в памяти и не могут быть записаны или восстанавлены с диска.

Ошибки страниц (page faults)

Ощибки страниц возникает когда программа запрашивает страницу кода или данных, которая не содержится в рабочем наборе. И должна быть найдена где-то в другом месте.

  • Программные прерывания (soft page fault) – это когда программа запрашивает страницу, которая находится в памяти, но вне рабочего набора. В этом случае не требуется восстановление страницы с диска.
  • Аппаратные прерываеия (hard page fault) – это когда программа запрашивает страницу, которая не содержится в физической памяти (RAM) и подлежит восстановлению с диска. Сбои страниц такого типа лучше всего показывают наличие узких мест в конфигурации памяти. Более 5 сбоев в секунду говорят о необходимости добавления RAM.

Счетчики для объекта Память

Page Faults/sec: Показывает насколько часто данные не находятся в рабочем наборе. Включает случаи аппаратных и программных прерываний
Page Inputs/sec: Показыает количество страниц восстанавленных с диска за секунду для обработки прерываний page fault. Сравнение с Page Faults/sec дает количество программных прерываний типа page fault.
Page Outputs/sec: Сколько страниц записывались на диск для освобождения RAM по запросу прерывания page fault.
Pages/sec: Общее количество страниц восстановленных с диска и записанных на диск.

Сумма Page Outputs/sec и Page Inputs/sec.

Сравнение с Page Faults/sec дает представление о количестве мягких и жестких сбоев страниц.

Допустимое среднее значение: 0 — 20 Pages/sec

Pages Reades/sec Показывает сколько раз в секунду система осуществляет чтение с диска по прерыванию page fault.
Pages Writes/sec Показывает сколько раз в секунду система осуществляет запись на диск по прерыванию page fault.
Available Bytes: Количество байт в физической памяти (RAM), свободных для всех программ и процессов.

Обычно низок, так как NT Disk Cache Manager использует свободную RAM для кэширования файловой системы и возвращает ее по требованию процесса или программы

Менее 4MB свободной памяти показывает наличие чрезмерного пистания страниц.

Committed Bytes: Общее количество выделенной памяти для всех процессов.

Показывает фактический объем памяти, используемый системой. Может быть больше размера RAM.

Превышение значением счетчика размера RAM показывает наличие узкого места.

Pool Non-paged Bytes Общее количество байт памяти в резидентном пуле. Эта память используется операционной системой для внутренних нужд.

Увеличение значения этого счетчика без увеличения активности компьютера говорит о наличии процесса, пожирающего память.

Глоссарий

 Групповая разработка в 1C:Enterprise Development Tools Издание 3 (21.01.2021)

Ветка это именованная ссылка на коммит. Существует два типа веток: локальные ветки и ветки удалённого отслеживания, которые служат для разных целей.

Ветка удалённого отслеживания (Remote Tracking Branch)

Ветка удалённого отслеживания это ветка, которая создаётся автоматически при клонировании репозитория или при получении изменений из удалённого репозитория. Ветка удалённого отслеживания в локальном репозитории всегда соответствует некоторой локальной ветке в удалённом репозитории. Ветка удалённого отслеживания указывает на тот же коммит, что и соответствующая ей ветка в удалённом репозитории (на момент клонирования или получения изменений). Ветка удалённого отслеживания может быть использована для автоматического создания upstream-настроек локальной ветки.

Извлечь (Check Out)

Команда Извлечь обновляет рабочий каталог версиями файлов, содержащимися в некотором коммите. Если извлекался коммит, на который указывает ветка, то ещё обновляется индекс и указатель HEAD.

Индекс (Index, Staging Area)

это набор файлов со статистикой, содержимое которых хранится как объекты. Индекс — это сохраненная версия вашего рабочего каталога. По правде говоря, он может также содержать вторую и даже третью версии рабочего каталога, которые используются при слиянии.

Исправить (Amend)

Если вы обнаружили, что пропустили или забыли что-то при фиксации, вы можете это исправить с помощью команды Исправить ( Amend ). Она означает, что текущий коммит должен «изменить» предыдущий коммит в текущей ветке. В результате новый текущий коммит заменит предыдущий. Эта операция часто используется для исправления неверных коммитов до их публикации в других репозиториях.

Клон (Clone)

Клон это копия репозитория, полученная в результате клонирования.

Клонирование (Clone)

Клонирование это полное копирование репозитория, включая всю его историю. Для каждой локальной ветки клона автоматически создаётся удалённая ветка для отправки изменений в исходный репозиторий и получения изменений из него.

Коммит (Commit)

Каждый коммит представляет собой чётко определённый снимок всех файлов, хранящихся в репозитории. Это одна точка в истории Git’а. Вся история проекта представляется как набор взаимосвязанных коммитов. Слово «коммит» часто используется Git’е в тех же местах, где в других системах контроля версий используются слова «ревизия» и «версия».

Коммит слияния (Merge Commit)

Коммит слияния это особый коммит, имеющий более одного предка. Коммит слияния создаётся автоматически для фиксации результата трёхстороннего слияния.

Коммитер (Committer)

Коммитер это человек, который последним применил (зафиксировал) изменения, сделанные им или другим человеком.

Локальная ветка (Local Branch)

Всякий раз, когда изменения локального репозитория фиксируются, создаётся новый объект коммита. Без локальных веток было бы очень сложно отслеживать изменения в репозитории, например, когда в него добавляются другие коммиты в результате обновлений из удалённого репозитория или в результате извлечения других коммитов. Локальная ветка решает эту проблему, предоставляя локальное имя, по которому можно найти текущий коммит. Когда изменения фиксируются в локальном репозитории, ветка автоматически обновляется, чтобы указывать на вновь созданный коммит. Кроме этого локальной ветке можно указать upstream-настройки, которые будут полезны для синхронизации с удалённым репозиторием.

Метка (Tag)

Метка это ссылка, которая, чаще всего, указывает на некоторый коммит. В отличие от HEAD метка не обновляется командой Фиксировать. Метка чаще всего используется для указания на определенную точку в истории коммитов.

Оторванный HEAD (Detached HEAD)

Оторванный HEAD это состояние локального репозитория, при котором в рабочий каталог извлечен не тот коммит, на который указывает HEAD (конец ветки), а произвольный коммит. Оторванный HEAD можно использовать только для просмотра состояния репозитория на какой-то момент времени. В этом состоянии изменения, выполненные и зафиксированные вами, не будут принадлежать никакой ветке и будут недоступны.

Отправить в Upstream (Push to Upstream)

Отправить изменения в удалённую ветку, связанную с локальной веткой.

Патч (Patch)

Патч это часть программного обеспечения, созданная для того, чтобы исправить проблему или обновить компьютерную программу. Файл патча содержит описание изменений некоторого набора ресурсов. Такое описание изменений может быть автоматически применено к другому репозиторию, например.

Перемотка вперед (Fast-forward)

Это особый вид слияния, при котором вы объединяете коммит с изменениями, которые являются потомком этого же коммита. В этом случае не создаётся новый коммит слияния, а просто выполняется обновление до версии потомка.

Получить (Fetch)

Получение ветки означает получение из удалённого репозитория ссылки на голову ветки для того, чтобы определить, какие объекты отсутствуют в локальной базе объектов, и получить их тоже.

Получить и слить (Pull)

Получение и слияние ветки означает получение изменений из удалённого репозитория и слияние их с текущей веткой.

Получить из Upstream (Fetch from Upstream)

Получить изменения из удалённой ветки, связанной с локальной веткой.

Рабочий каталог (Working Directory, Working Tree)

Рабочий каталог содержит актуальное состояние извлеченных файлов. Помимо той версии файлов, которая была извлечена, рабочий каталог также содержит все локальные изменения, которые вы выполнили, но ещё не зафиксировали.

Репозиторий (Repository, Object Database)

Репозиторий (или база объектов) хранит все объекты, которые составляют историю проекта. Все объекты в этой базе данных идентифицируются с помощью защищенного 20-байтового SHA-1 хэша содержимого объекта.

Система контроля версий (Version Control, Version Control System)

Система, записывающая изменения в файл или набор файлов в течение времени, и позволяющая вернуться позже к определённой версии.

Слить (Merge)

Слить означает принести содержимое другой ветки (возможно, из удалённого репозитория) в текущую ветку. В том случае, когда добавляемая ветка находится в другом репозитории, сначала выполняется получение удалённой ветки, а затем слияние результата с текущей веткой. Эта комбинация операций получения и слияния называется Получить и слить. Слияние выполняется автоматическим процессом, который идентифицирует изменения, сделанные с тех пор, когда ветви разошлись, и затем применяет все эти изменения вместе. В случаях, когда изменения конфликтуют, для завершения слияния может потребоваться ручное вмешательство.

Слияние (Merge)

Если это не перемотка вперед, то успешное слияние приводит к созданию нового коммита, представляющего результат слияния, и имеющего в качестве своих родителей концы слитых ветвей. Такой коммит называется » коммитом слияния», или просто «слиянием».

Спрятанные изменения (Stashes)

Набор объектов, которые используются для временного хранения содержимого грязного рабочего каталога и содержимого индекса для использования в будущем.

Текущая ветка (Checked-out Branch)

Ветка, извлеченная из репозитория.

Удалённый репозиторий (Remote, Remote Repository)

Репозиторий, расположенный где-либо ещё, помимо локального репозитория. Как правило удалённые репозитории располагаются на других компьютерах и доступны с помощью разных транспортных протоколов.

Фиксировать (Commit)

Действие, заключающееся в сохранении нового снимка состояния проекта в истории Git, путем создания нового коммита.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *