githubschool / Nov-6

Let's learn about Git and GitHub
https://githubschool.github.io/Nov-6/
MIT License
2 stars 1 forks source link

hbayado feedback #27

Open hbayado opened 6 years ago

hbayado commented 6 years ago

Hi @brianamarie

I just finished my first teach-back session, it took us 3 hours! Sorry for that 😟

Please let me know once you receive the video and I will be waiting for your feedback on it.

The next session should be recorded in the next few days as we have a long weekend in the UAE these days because of the national holiday, I am targeting Monday evening for Day 2, will keep you posted.

Thanks

brianamarie commented 6 years ago

Hi @hbayado! Yes, I have gotten the recording. I hope to have it graded before you do the Monday recording. Have a nice holiday and weekend!

beardofedu commented 6 years ago

Hey Hazem,

My name is Matt Desmond and I am a colleague of @brianamarie on the GitHub Training Team. I helped Briana with reviewing your teachback video so we could provide you with timely feedback. I really enjoyed watching your video and it was really awesome to see you explore Git functionality in "real time". Here is my feedback for the Teachback November 29 Room 2 Video 2 video:

Topic: Introduction to GitHub, Getting Ready for Class, & Getting Started

Intro

Getting Started

Topic: GitHub Flow

Topic: Branching

Topic: Local Git Configs

Topic: Working Locally

Question at the end

So, if your pull request isn't approved, you would make changes locally and push the commits to your branch. That branch will be updated with your changes and the Pull Request you already have opened will be updated with the commits you made and pushed after your Pull Request was rejected. Typically a branch and a pull request exist in a 1:1 relationship.

Rejected : Request Changes vs Closed

So, a Pull Request reviewer can request changes or close the pull request. If the reviewer requests changes the pull request is still open and you can make changes to the branch (locally or on the UI) and commit / push (if working locally) to your pull request.

Around 3:07, the discussion was talking about creating a pull request with a branch to identify what you are planning on doing. Typically an Issue would be used to identify what work you wanted to accomplish but, if you want to initate the change with a pull request you would need to create a new branch and make a commit that differentiates the new branch from the base branch. Then you can create a pull request.

General notes:

If you have any questions about my feedback, feel free to at-mention me.

hbayado commented 6 years ago

Hi @beardofedu

Thanks Matt for your feedback, very helpful and insightful.

Topic: Introduction to GitHub, Getting Ready for Class, & Getting Started

Intro

Getting Started

Topic: Github Flow

Topic: Branching

Topic: Local Git Configs

Topic: Working Locally

Questions at the End

The way you are describing how the Pull Request is integrated with your feature branch is very powerful and nice to know! Need to do more testing to fully flesh out the details, but thanks for pointing it out.

General Notes:

hbayado commented 6 years ago

Hi @brianamarie,

I noticed that my name on the project board is still in the list of "No Techbacks Complete"? So is that gonna change soon to reflect that Day 1 is complete? Should I move to Day 2? Please advise

Thanks in advance

Hazem

beardofedu commented 6 years ago

@hbayado

I read the above point many times and still am confused by it. The first part is clear, where git pull updates the current branch I am currently checked out to. However, the second part is where I get confused. So you said "it updates all of the other branches on your remote that they are ahead/behind the remote" so you mentioned the remote entity twice here and implied that they are being compared to each other, but are they the same "remote" or you did you mean different "remotes"?? Can you please elaborate? Thanks

So I'm going to try and explain it with an example, and hopefully this clear it up a little bit.

In your project you have 3 branches, master, feature_1, and feature_2

When you run git pull while checked out to feature_2 Git will literally grab the latest changes to the feature_2 branch and apply them. When you run git pull you are actually running git fetch (aka grab the latest changes) and git merge (take those latest changes and apply them to my branch. When you run git pull Git applies the changes from your remote to the branch you are checked out to, but, it is also updating the reference points for master and feature_1. The next time you checkout to master or feature_1 and run git status Git will respond with the number of commits that you are behind (aka the number of commits that exist on your remote that aren't on your local version of the branch) or ahead (the number of commits on your local machine that don't exist on the remote). Basically, when you run git pull Git is updating your current branch (applying changes to your files that exist on the remote but not locally) but also updates the reference points for other branches on your local copy of the repository.