创建: 2017-04-05 17:04:03
2017-04-24
更新: 2017-05-16
更新: 2017-06-27 完善git remote add
更新: 2017-07-04 完善git pull origin master这种pull其他分支的
创建时间改为创建
增加commit与issue关联
删除远程仓库,push到其他远程仓库的分支(已有,加粗)
更新: 2017-09-02 增加rebase, 并且增加取消的说明(git rebase branch-name --abort)
更新: 2017-09-05 增加git reset 详细说明 http://blog.csdn.net/hudashi/article/details/7664464/
更新: 2017-10-28 增加git clean, git reflog show
更新: 2017-11-20 增加git commit --amend
更新: 2017-11-21 增加git rebase -i HEAD~2
更新: 2018-01-22 增加重命名本地分支 git branch (-m | -M) [
增加切换追踪的分支 git branch -u remote-name/branch-name
更新: 2019-02-12 补充 切换追踪的远程分支 的说明与例子
更新: 2019/03/18 补充git branch的option --all --remote
更新: 2019/05/18 补充切换跟踪分支的例
命令
含义
注释
git config …
设置本地变量
git config --global …
设置全局变量
git config --global --list
查看全局变量
--list = -l
git config --list
查看所有变量
git clone [url]
克隆已有仓库
git clone [url] abc abc为 别名(本地文件名)
git add
追踪新文件或者把已修改文件暂存
git commit
将暂存文件提交到本地仓库(repository)
-a自动add,跳过上一步
-m "…"直接添加信息
关联issue
信息里面增加#issue编号
修改最新commit
git commit --amend
git diff
查询变化
different;-staged显示已暂存的
git status
查询文件状态(修改,暂存)
-s 或者--short后为通用简写
git rm
删除文件并从暂存区也删除文件
-f 不知道什么用处,测试后没区别
\*~
所有以~结尾的文件(后缀)
\*后接的是后缀
\*.log
所有以.log结尾的文件
\*后接的是后缀
git mv file_from
file_to
给文件改名并应用于git
相当于mv + git rm + git add
git log
查看commit(提交)历史
-p 显示差异 -n 列出最近n次
取消暂存的文件
尽量不要附加选项,危险
git checkout --
撤销对文件的修改
尽量不用,老文件会直接覆盖新文件!不可撤销
git remote
查看已连接的远程仓库
-v 附加远程仓库地址
show [remote-name] 显示某一远程分支详情
git remote rename
git remote add 别称 网址
新增远程仓库
git remote add origin …
git remote remove 别称 网址
删除远程仓库
git push origin :br-name
删除远程分支
git push -d origin test
git push --delete origin test
git push origin :test三个等价
git push [] [] [tag-name]
提交标签
--tags 提交所有标签
git push [remote-name] [branch-name]
将本地仓库推送到远程仓库
后两个默认origin和master
git fetch
[remote-name]
从远程仓库拉取(更新)
并不会合并到本地仓库,需要手动
git merge branch name
合并fetch抓取到的信息到本地分支
git rebase branch-name
合并fetch抓取到的信息到本地分支
合并commit git rebase branch-name -i
HEAD~(前几次)
取消 git rebase --abort
git rebase -i HEAD~2
合并commit
git pull
从远程仓库拉取并合并本地分支
拉取其他分支
git pull origin master
git tag
显示所有标签
git tag -l
""/''/
检索标签
"v1*" = 'v1*' = v1*
git tag -a [tag-name]
创建附注标签
git tag [tag-name]
创建轻量标枪
git branch
显示当前所有分支
-v 显示所有分支最后一次提交
--merged 显示已合并分支,都可删除
--no-merged 显示未合并分支,不可删除。强制删除用-D
--v 查看所有本地分支分别跟踪的分支等情况
-r (--remote) 显示远程分支
-a (--all) 显示全部分支(local+remote)
git branch [bran-name]
创建新分支
-d 删除分支
git branch (-m | -M) [
重命名本地分支
git branch -u remote-name/branch-name
切换追踪的远程分支
(push等操作的远程对象)
git branch -u origin/new_branch
git branch -u origin/feature/hide_public_confirmation
git checkout [bran-name]
移动HEAD到当前所在分支。切换分支
*指向当前所在分支
git checkout -b [bran-name]
创建新分支并切换过去
git branch [bran-name]
git checkout [bran-name]
git checkout -b [branch-name]
[remote-name]/[branch-name]
下拉并跟踪远程分支
git checkout --track
[remote-name]/[branch-name] 简化写法
git merge [bran-name]
将指定分支合并到当前分支
git reset --hard [num]
回滚到序列号所指的版本
[num]在这里指版本号
git cherry-pick [num]
将其他分支的commit复制一份到当前分支
[num]在这里指版本号
git clean -n/-f/-d
删除没有 git add 的 文件
-n 显示将要删除的文件和目录
-f 删除文件
-d 删除目录
git
reflog show
显示所有commit
手机扫一扫
移动阅读更方便
你可能感兴趣的文章