| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [View Raw Code] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
parent directory.. | ||||
git clone --recursive https://github.com/PowerShell/PowerShellThe PowerShell repository has submodules. They are required to build and test PowerShell. That's why you need --recursive, when you git clone.
If you already cloned the repo without --recursive, update submodules manually
git submodule init
git submodule updateSee FAQ for details.
Use git rebase instead of git merge and git pull, when you're updating your feature-branch.
# fetch updates all remote branch references in the repo and all submodules
# --all : tells it to do it for all remotes (handy, when you use your fork)
# -p : tells it to remove obsolete remote branch references (when they are removed from remote)
git fetch --all -p
# rebase on origin/master will rewrite your branch history
git rebase origin/masterCovering all possible git scenarios is behind the scope of the current document. Git has excellent documentation and lots of materials available online.
We are leaving few links here:
Git pretty flowchart: what to do, when your local repo became a mess.
If you are looking for the source code for a particular release, you will find it via tags.
Note: checking out a tag will move the repo to a DETACHED HEAD state.
If you want to make changes, based on tag's version (i.e. a hotfix), checkout a new branch from this DETACHED HEAD state.
git checkout -b vors/hotfixWe highly recommend these configurations to help deal with whitespace, rebasing, and general use of Git.
Auto-corrects your command when it's sure (stats to status)
git config --global help.autoCorrect -1Refuses to merge when pulling, and only pushes to branch with same name.
git config --global pull.ff only
git config --global push.default currentShows shorter commit hashes and always shows reference names in the log.
git config --global log.abbrevCommit true
git config --global log.decorate shortIgnores whitespace changes and uses more information when merging.
git config --global apply.ignoreWhitespace change
git config --global rerere.enabled true
git config --global rerere.autoUpdate true
git config --global am.threeWay true| Back | FazBrowse Home | New Git URL |