Compare commits
1 Commits
refactor-r
...
2240cbe10d
| Author | SHA1 | Date | |
|---|---|---|---|
| 2240cbe10d |
@@ -307,6 +307,44 @@ git merge main
|
||||
git pull origin main
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### "I'm on the wrong branch!"
|
||||
|
||||
```pwsh
|
||||
# Switch to the correct branch
|
||||
git switch correct-branch
|
||||
|
||||
# Check current branch anytime
|
||||
git branch
|
||||
```
|
||||
|
||||
### "I made commits on the wrong branch!"
|
||||
|
||||
Don't panic! You can move commits to another branch:
|
||||
|
||||
```pwsh
|
||||
# Create the correct branch from current state
|
||||
git branch correct-branch
|
||||
|
||||
# Switch to wrong branch and remove the commits
|
||||
git switch wrong-branch
|
||||
git reset --hard HEAD~2 # Remove last 2 commits (adjust number)
|
||||
|
||||
# Switch to correct branch - commits are there!
|
||||
git switch correct-branch
|
||||
```
|
||||
|
||||
### "The merge created unexpected results!"
|
||||
|
||||
```pwsh
|
||||
# Undo the merge
|
||||
git merge --abort
|
||||
|
||||
# Or if already committed:
|
||||
git reset --hard HEAD~1
|
||||
```
|
||||
|
||||
### "I want to see what changed in a merge!"
|
||||
|
||||
```pwsh
|
||||
@@ -330,13 +368,13 @@ git diff main..feature-branch
|
||||
|
||||
After completing this module, you understand:
|
||||
|
||||
- Branches create independent lines of development
|
||||
- `git switch -c` creates a new branch
|
||||
- Changes in one branch don't affect others
|
||||
- `git merge` combines branches
|
||||
- Merge commits have two parent commits
|
||||
- `git log --graph` visualizes branch history
|
||||
- Branches are pointers, not copies of files
|
||||
- ✅ Branches create independent lines of development
|
||||
- ✅ `git switch -c` creates a new branch
|
||||
- ✅ Changes in one branch don't affect others
|
||||
- ✅ `git merge` combines branches
|
||||
- ✅ Merge commits have two parent commits
|
||||
- ✅ `git log --graph` visualizes branch history
|
||||
- ✅ Branches are pointers, not copies of files
|
||||
|
||||
## Next Steps
|
||||
|
||||
|
||||
@@ -235,3 +235,5 @@ To reuse the repository:
|
||||
- **Keep groups small** (2 people per repository) for more interaction
|
||||
- **Encourage communication** - the exercise works best when people talk
|
||||
- **Let conflicts happen** - they're the best learning opportunity
|
||||
- **Walk the room** - help students who get stuck
|
||||
- **Point students to 03_TASKS.md** - Simple explanations of clone, push, pull, and fetch for beginners
|
||||
|
||||
@@ -61,7 +61,7 @@ Enter file in which to save the key (/Users/yourname/.ssh/id_rsa):
|
||||
|
||||
### Passphrase (Optional but Recommended)
|
||||
|
||||
You'll be prompted to enter a passphrase, just press `Enter` no password is needed (recommended but not needed):
|
||||
You'll be prompted to enter a passphrase, just press `Enter` no password is needed:
|
||||
|
||||
```
|
||||
Enter passphrase (empty for no passphrase):
|
||||
@@ -72,6 +72,7 @@ Enter same passphrase again:
|
||||
|
||||
Check that your keys were created:
|
||||
|
||||
**Linux/Mac:**
|
||||
**Windows PowerShell:**
|
||||
```powershell
|
||||
dir $HOME\.ssh\
|
||||
@@ -163,14 +164,33 @@ git clone git@ssh.dev.azure.com:v3/myorg/git-workshop/great-print-project
|
||||
|
||||
**How to find your SSH URL:**
|
||||
1. Navigate to your repository in Azure DevOps
|
||||

|
||||
2. Click **Clone** in the top-right
|
||||
3. Select **SSH** from the dropdown
|
||||
4. Copy the SSH URL
|
||||
|
||||

|
||||

|
||||
*Select SSH from the clone dialog to get your repository's SSH URL*
|
||||
|
||||
### Convert Existing HTTPS Repository to SSH
|
||||
|
||||
If you already cloned a repository using HTTPS, you can switch it to SSH:
|
||||
|
||||
```bash
|
||||
cd /path/to/your/repository
|
||||
git remote set-url origin git@ssh.dev.azure.com:v3/{organization}/{project}/{repository}
|
||||
```
|
||||
|
||||
**Verify the change:**
|
||||
```bash
|
||||
git remote -v
|
||||
```
|
||||
|
||||
You should see SSH URLs:
|
||||
```
|
||||
origin git@ssh.dev.azure.com:v3/myorg/git-workshop/great-print-project (fetch)
|
||||
origin git@ssh.dev.azure.com:v3/myorg/git-workshop/great-print-project (push)
|
||||
```
|
||||
|
||||
### Daily Git Operations
|
||||
|
||||
All standard Git commands now work seamlessly with SSH:
|
||||
@@ -194,6 +214,7 @@ git push -u origin feature-branch
|
||||
---
|
||||
|
||||
## Additional Resources
|
||||
|
||||
- **Azure DevOps SSH Documentation**: [https://docs.microsoft.com/en-us/azure/devops/repos/git/use-ssh-keys-to-authenticate](https://docs.microsoft.com/en-us/azure/devops/repos/git/use-ssh-keys-to-authenticate)
|
||||
- **SSH Key Best Practices**: [https://security.stackexchange.com/questions/tagged/ssh-keys](https://security.stackexchange.com/questions/tagged/ssh-keys)
|
||||
- **Git with SSH**: [https://git-scm.com/book/en/v2/Git-on-the-Server-Generating-Your-SSH-Public-Key](https://git-scm.com/book/en/v2/Git-on-the-Server-Generating-Your-SSH-Public-Key)
|
||||
@@ -214,9 +235,15 @@ cat ~/.ssh/id_rsa.pub
|
||||
# Display public key (Windows)
|
||||
type $HOME\.ssh\id_rsa.pub
|
||||
|
||||
# Test SSH connection
|
||||
ssh -T git@ssh.dev.azure.com
|
||||
|
||||
# Clone with SSH
|
||||
git clone git@ssh.dev.azure.com:v3/{org}/{project}/{repo}
|
||||
|
||||
# Convert HTTPS to SSH
|
||||
git remote set-url origin git@ssh.dev.azure.com:v3/{org}/{project}/{repo}
|
||||
|
||||
# Check remote URL
|
||||
git remote -v
|
||||
```
|
||||
@@ -229,7 +256,7 @@ git@ssh.dev.azure.com:v3/{organization}/{project}/{repository}
|
||||
|
||||
**Example:**
|
||||
```
|
||||
git@ssh.dev.azure.com:v3/novenco/software/git-workshop
|
||||
git@ssh.dev.azure.com:v3/mycompany/git-workshop/great-print-project
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 53 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 165 KiB |
Reference in New Issue
Block a user