git freeze works a lot like
git stash, in that it stores the current changes
in your working copy and index somewhere. Unlike
stores those changes on your current branch. This effectively allows you to
pause development of a branch, work on something else, and then come back to
exactly the same working state later (by running
git freeze will make up to 2 commits on your branch. A commit with the message
FREEZE.indexed will contain all changes which you’ve added to your index (like
with git add, git mv, git rm, etc.). A commit with the message
FREEZE.unindexed will contain all changes which were not in your index at the
time you ran git freeze (freshly modified files, new files, etc.).
git freeze will only freeze up to 100MB of untracked files. See
CONFIGURATION VARIABLES for more details.
$ git status --short A added_file AM added_file_with_unstaged_changes D deleted_file M modified_file D unstaged_deleted_file ?? unadded_file $ git freeze $ git status --short $ git log -n 2 --stat commit c819cf561064339cde3dff88311c4fa63ce35d5c Author: local <email@example.com> Date: Thu Apr 10 08:54:56 2014 +0000 FREEZE.unindexed added_file_with_unstaged_changes | 1 + modified_file | 1 + unadded_file | 0 unstaged_deleted_file | 1 - 4 files changed, 2 insertions(+), 1 deletion(-) commit 5ab592982f141dd6857ee2ddd4aa5b97e2c13746 Author: local <firstname.lastname@example.org> Date: Thu Apr 10 08:54:56 2014 +0000 FREEZE.indexed added_file | 1 + added_file_with_unstaged_changes | 1 + deleted_file | 1 - 3 files changed, 2 insertions(+), 1 deletion(-) $ git thaw $ git status --short A added_file AM added_file_with_unstaged_changes D deleted_file M modified_file D unstaged_deleted_file ?? unadded_file
This sets the size limit as an integer number of megabytes of untracked files that git-freeze will be willing to put in suspended animation. A 0 or negative limit disables the size-limit check entirely. 100 by default.