git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Basic Git usage

From
Jakub Narebski <jnareb@gmail.com>
Date
Aug 14, 2010, 12:39 UTC
Message-ID
<m3hbix2wss.fsf@localhost.localdomain>
In-Reply-To
<1281760358285-5422412.post@n2.nabble.com>
hogsolo <greg@localdirt.com> writes:
Show 13 quoted lines
> Hi, Im new to Git, formerly an SVN user.
>
> I have a master repo and have created a branch. I want to work in both at
> the same time. I want to change some files in the master, then switch to the
> branch ( git checkout branchname) , work on some files, then switch back to
> the master. 
>
> However git wont let me switch back to the master until I have added,
> committed and pushed my files in the branch. 
>
> Is this correct behavior for git? It would seem that I not be REQUIRED to
> check in anything I was working on before switching between branch and
> master, but that's the behavior I'm seeing via error messages.

Git wouldn't allow you to switch a branch ('git checkout <branch>') if you have uncomitted changes that would conflict with the branch you switch to. For example if you have uncomitted changes to file 'foo', and this file is different on the branch you switch to, then git rightly refuses to switch branches.

You can tell git to try to merge changes with
  git checkout -m <branch>
or you can force git to discard your local changes with
  git checkout -f <branch>
or you can stash away your changes before switching branch.
In no case _pushing_ changes is a requirement.
-- 
Jakub Narebski
Poland
ShadeHawk on #git
Previous: hogsoloNext: Dmitry Potapov
Message 2 of 3 in “Basic Git usage”
  1. hogsoloAug 14, 2010
  2. Jakub NarebskiAug 14, 2010
  3. Dmitry PotapovAug 14, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.