Git 基本原理与常用命令
1、设置与帮助
1 | 1. git help <command> # 显示指定命令的help |
2、修改与提交
1 | 1. git status # 查看工作区状态 |
3、撤销与恢复
1 | 1. git checkout -- <file> # 抛弃工作区指定文件的修改 |
4、查看提交
1 | 1. git show # 显示某次提交的内容 |
5、差异对比
1 | 1. git diff <file> # 比较当前文件和暂存区文件差异 |
6、关于版本
1 | 1. git tag #查看版本 |
7、关于分支
1 | 1. git branch <new_branch> # 创建新的分支 |
8、关于远程仓库
1 | 1. git remote add origin <remote> # 添加远程库 |
9、跟踪远程库和本地库
1 | 1. git branch --set-upstream master origin/master |
10、本地支持多个Git服务
1 | cd /Users/chenyuan/.ssh |
11、推荐一个特别好玩的Git游戏~ Githug
Githug 安装和使用方法,一共有55关。
关卡列表
关卡名称 | 学习内容 | Git 命令 |
---|---|---|
第1关 init | 初始化仓库 | git init |
第2关 config | 设置用户名和电子邮箱地址 | git config |
第3关 add | 把文件添加到暂存区 | git add |
第4关 commit | 提交 | git commit |
第5关 clone | 克隆远程仓库 | git clone |
第6关 clone_to_folder | 克隆远程仓库,并指定本地目录名 | git clone |
第7关 ignore | 配置不被 Git 管理的文件 | vim .gitignore |
第8关 include | 配置不被 Git 管理的文件 | vim .gitignore |
第9关 status | 查看仓库状态 | git status |
第10关 number_of_files_committed | 查看仓库状态 | git status |
第11关 rm | 删除文件 | git rm |
第12关 rm_cached | 从暂存区中移除文件,系 git add 的逆操作 | git rm –cached |
第13关 stash | 保存而不提交 | git stash |
第14关 rename | 文件改名 | git mv |
第15关 restructure | 整理目录结构 | |
第16关 log | 查询日志 | git log |
第17关 tag | 打标签 | git tag |
第18关 push_tags | 把标签推送到远程仓库 | git push –tags |
第19关 commit_amend | 修改最后一次提交 | git commit –amend |
第20关 commit_in_future | 指定提交的日期 | git commit –date |
第21关 reset | 从暂存区中移除文件,系 git add 的逆操作 | git reset |
第22关 reset_soft | 撤销提交,系 git commit 的逆操作 | git reset –soft |
第23关 checkout_file | 撤销对一个文件的修改 | git checkout |
第24关 remote | 查询远程仓库 | git remote |
第25关 remote_url | 查询远程仓库的 URL | git remote -v |
第26关 pull | 从远程仓库拉取更新 | git pull |
第27关 remote_add | 添加远程仓库 | git remote |
第28关 push | 把提交推送到远程仓库 | git push |
第29关 diff | 查看文件被修改的细节 | git diff |
第30关 blame | 查询每一行代码被谁编辑过 | git blame |
第31关 branch | 创建分支 | git branch |
第32关 checkout | 切换分支 | git checkout |
第33关 checkout_tag | 切换到标签 | git checkout |
第34关 checkout_tag_over_branch | 切换到标签 | git checkout |
第35关 branch_at | 在指定的提交处创建分支 | git branch |
第36关 delete_branch | 删除分支 | git branch -d |
第37关 push_branch | 推送分支到远程仓库 | git push |
第38关 merge | 合并分支 | git merge |
第39关 fetch | 从远程仓库抓取数据 | git fetch |
第40关 rebase | 变基合并 | git rebase |
第41关 repack | 重新打包 | git repack |
第42关 cherry-pick | 合并分支上指定的提交 | git cherry-pick |
第43关 grep | 搜索文本 | git grep |
第44关 rename_commit | 修改历史提交的说明 | git rebase -i |
第45关 squash | 把多次提交合并成一次提交 | git rebase -i |
第46关 merge_squash | 合并分支时把多次提交合并成一次提交 | git merge –squash |
第47关 reorder | 调整提交顺序 | git rebase -i |
第48关 bisect | 用二分法定位 bug | git bisect |
第49关 stage_lines | 添加文件的部分行到暂存区 | git add –edit |
第50关 file_old_branch | 查看 Git 上的操作历史 | git reflog |
第51关 revert | 取消已推送到远程仓库的提交 | git revert |
第52关 restore | 恢复被删除的提交 | git reset –hard |
第53关 conflict | 解决冲突 | |
第54关 submodule | 把第三方库当作子模块 | git submodule |
第55关 contribute | 捐献 |
把这个游戏全部通关,你的操作绝对又上N个台阶~
参考地址:
如果大家喜欢我的文章,可以关注个人订阅号。欢迎随时留言、交流。