Open monkindey opened 8 years ago
jump back to your last branch
跳到你最后使用的分支上
Quickly get a list of contributors and see how many commits each person has
快速预览贡献者列表还有他们的提交数
当你想要把之前追踪文件的变成不追踪了
How do you search for a branch in SourceTree
overview the git config
- git config --local -l
- git config --global -l
- git config --system -l
add the config item
git config add user.name "monkindey"
https://github.com/monkindey/note/issues/6#issuecomment-297894252
https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY
http://stackoverflow.com/questions/1394797/move-existing-uncommited-work-to-a-new-branch-in-git
背景是这样子, 我有新增一个目录bench, 里面下载了node_modules, 但是我在根目录设置了.gitignore是有node_modules, 但是我不太确定bench里面的node_modules会不会被忽略
git ls-files --others --exclude-standard
http://stackoverflow.com/questions/3801321/git-list-only-untracked-files-also-custom-commands
背景是这样子的, 如果对一些文件给commit了, 突然想不跟踪它了, 怎么办呢? 在.gitignore里面再设置是没用的, 只有先去掉它的追踪然后再加上才有效果.
跟这个重复了
git push <remote-name>
<branch-name>
remote-name is typically origin
http://stackoverflow.com/questions/1519006/how-do-you-create-a-remote-git-branch
git fetch origin pull/ID/head:BRANCHNAME
git checkout BRANCHNAME
git branch | wc -l
git fetch
git checkout <branch>
不过这个也不一定准哈, 只是列出没有被合并的文件名而已
git diff --name-only --diff-filter=U
git show --pretty="" --name-only <commit>
git branch -vv
背景
git pull 的时候出现pull太多分支了, 所以打算默认git pull当前分支的
命令
git branch -u origin/<branch_name>
Push all branches
git config --global push.default matching
Push only the current branch
git config --global push.default simple
系统级 system
/etc/gitconfig
用户级
~/.gitconfig
目录级
.git/config
git reset --hard HEAD~
取消你最近的一次提交, 本地也不会保留
git reset HEAD~
取消你最近的一次提交, 本地会保留
git show
<commit>
通过 git log | grep | sort | uniq等等命令组合, 让我们认识到命令行的强大和灵活
Mac党要去keyChains那里删除之前保留的密码
一种场景是如果你重新编译了webpack, 会导致build目录下地文件很多都需要提交的感觉, 但 其实并没有修改过, 这个时候用下面的目录给祛除掉。
git checkout -- `git diff --name-only | tr '\n' ' '`
git diff --staged
一种场景就是我要看某个commit的文件长什么样子的. 可以这样子弄
git checkout <commit-id>
它有点像是新创建一个中间branch一样,你可以通过
git checkout <branch>
切回来
一种场景就是我开发了, 但是我提交错分支了
git stash
git checkout branch2
git stash pop
g diff <commit>^..<commit> -- <filepath>
git log --follow filename
.gitignore
在git库里面, 我想修改, 但是不想我一些本地文件让git识别到。
可以通过git update-index --assume-unchanged .gitignore
让git不要track
gitignore文件, 然后你就可以愉快得添加.gitignore了
跟着Kent C. Dodds学习如何参与开源项目开发
git log remotename/branchname
有一种情况就是你提交了PR, 然后还没被合并, 官方又有新的东西加入, 你又rebase了, 导致你git push之后每次都叫你来git pull一次但是其实是没有什么改动的。所以导致又出现一个merge commit历史
可以用上这个方法
git push -f origin <branch>
深入了解Git,而且还是视频的,学习起来更加好玩。还有就是我还没看呢。
git config --global push.default current
有时候你要rebase你的分支,但是出现冲突怎么办呢?
git add .
;# 1
git branch -m <oldname> <newname>
# 2
git branch -m <newname>
Squash and Merge in Git
git config --global http.https://github.com.proxy socks5://127.0.0.1:1080
git config --global --unset http.https://github.com.proxy
Table Of Content (TOC)
Reference