-
-
Notifications
You must be signed in to change notification settings - Fork 927
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The "git checkout" mess - understanding #169
Comments
It is probably too late to have an impact on #155 but the discussion is worth having. |
Isn't too late. We will delay 5.4 so we can include this on it. =)
You didn't missed it. And thanks to bring it up.
I agree that it is a lot confusing and dangerous (because of detached head). I disagree with not-so-useful, replaceable. If you want to check if something works or not on a previous version you will need to use |
Personally, I think git checkout is very important, as it sets the foundation for branching, which they'll learn sooner or later, even if not at the bootcamp. I think it's better to actually create a detached head as part of the lesson and discuss how to get back to the normal state. I teach it like this: https://github.com/daisieh/git-novice/blob/2015-07-24-lsiubc/06-collab.md |
To clarify my point, I think git checkout is very important (to switch and create branches) but I would avoid it to recover individual files. @daisieh thanks for sharing you tuning of the lesson, the detached head may indeed be a good time to introduce branches. Prior to teaching software carpentry, I actually introduced (local) branching before remote collaboration, so branching was a natural step. |
I also agree it's very confusing. I would like to avoid any reference to branches because the lesson is already packed. People is really interested on how to undo things. I'd say the first things we have to cover are how to undo changes in the working dir, how to unstage, and how to go throw away a committed change. @gvwilson proposed to add information on how to undo in #88. Do you think that we can introduce
This way we could avoid the the discussion on the detached head. |
Based on my own practice I think this makes sense. I use So from my perspective dealing with detached heads is a use case that's rare enough to justify not covering it in detail. Best regards, Jan |
When I'm teaching Git
I don't use
I don't mention others use of
|
I'm closing this as this is not so important. |
I recently watched my co-instructor teach the first part of the git lesson and I now understand why @gvwilson feels git is very inappropriate for beginners. I feel that
git checkout
is very confusing for learners and could probably be skipped.I drafted a post-workshop blog post, available there http://home.heeere.com/teach-swc-cern-201507.html
(see the section named The “git checkout” Mess-Understanding).
I'd like to see what people feel about
git checkout
.Here are the main arguments against it: confusing, dangerous (detached head mess), not-so-useful, replaceable.
The text was updated successfully, but these errors were encountered: