GitHub Desktop
Simple Git client focused on GitHub repositories and pull request workflows.
Developer
Compare Git and SVN concepts, search common commands, and browse popular visual version control tools.
| Tool | Command | Purpose | Explanation | |
|---|---|---|---|---|
| Git | git init | Create repository | Initialize a new local Git repository. | |
| Git | git clone <url> | Clone repository | Download a remote repository with its full history. | |
| Git | git status | Check changes | Show modified, staged, and untracked files. | |
| Git | git add <file> | Stage changes | Add file changes to the next commit. | |
| Git | git commit -m "message" | Commit | Record staged changes in local history. | |
| Git | git pull | Fetch and merge | Fetch remote changes and merge them into the current branch. | |
| Git | git push | Upload commits | Send local commits to a remote repository. | |
| Git | git branch | List branches | Show local branches and the active branch. | |
| Git | git switch <branch> | Switch branch | Move the working tree to another branch. | |
| Git | git switch -c <branch> | Create branch | Create and switch to a new branch. | |
| Git | git merge <branch> | Merge | Merge another branch into the current branch. | |
| Git | git rebase <branch> | Rebase | Replay commits on top of another branch. | |
| Git | git log --oneline --graph | View history | Show compact commit history with branch structure. | |
| Git | git diff | Review changes | Show unstaged differences. | |
| Git | git stash | Save work | Temporarily store local changes without committing. | |
| Git | git tag <name> | Tag release | Create a label for a specific commit. | |
| SVN | svn checkout <url> | Checkout repository | Create a working copy from an SVN repository URL. | |
| SVN | svn update | Update working copy | Pull latest changes from the repository. | |
| SVN | svn status | Check changes | Show modified, added, deleted, and unversioned files. | |
| SVN | svn add <file> | Add file | Schedule a file or directory for version control. | |
| SVN | svn commit -m "message" | Commit | Send local working copy changes to the central repository. | |
| SVN | svn diff | Review changes | Show local differences against the base revision. | |
| SVN | svn log | View history | Show commit history for the working copy or URL. | |
| SVN | svn info | Repository info | Show repository URL, revision, and working copy metadata. | |
| SVN | svn copy <src> <dst> | Branch or tag | Create branches and tags by copying paths in the repository. | |
| SVN | svn merge <url> | Merge | Apply changes from another branch or path. | |
| SVN | svn revert <file> | Revert local change | Discard local edits for a file or directory. | |
| SVN | svn resolve --accept working <file> | Resolve conflict | Mark a conflicted file as resolved after choosing the working copy. |
Concepts
| Concept | Git | SVN |
|---|---|---|
| Repository model | Distributed clone with full history. | Central repository with working copies. |
| Commit scope | Commit locally first, then push. | Commit directly to central repository. |
| Branching | Lightweight local and remote branches. | Usually repository paths such as /branches/name. |
| Tags | Named references to commits. | Usually copied paths under /tags. |
| Offline work | Most history operations work offline. | Many operations require server access. |
| Conflict resolution | Resolve locally, then commit or continue merge/rebase. | Resolve working copy conflicts, then commit. |
Visual tools
Simple Git client focused on GitHub repositories and pull request workflows.
Visual history, branches, staging, and remote repository workflows.
Fast Git client with branch graph, interactive rebase, merge conflict tools, and stash support.
Graph-focused Git client with integrations for common hosting providers.
Polished Git client for commits, history, branch management, and conflict workflows.
Windows Explorer shell integration for Git operations.
Windows Explorer shell integration for SVN checkout, update, commit, diff, and log.
macOS SVN client for working copies, branches, tags, merge, and history browsing.
Cross-platform SVN client for enterprise and legacy repositories.
Many IDEs include built-in source control panels for daily commit, diff, branch, and update tasks.
FAQ
Use Git for distributed workflows, feature branches, pull requests, code reviews, and modern hosted repositories.
SVN can still fit centralized workflows, legacy enterprise repositories, or projects that rely on server-side path-based access control.
Yes. Each command row has a copy button so you can paste the command into a terminal or notes.
Related tools