https://www.runoob.com/git/git-tutorial.html
Git 基本操作
Git 的工作就是创建和保存你项目的快照及与之后的快照进行对比。
本章将对有关创建与提交你的项目快照的命令作介绍。
Git 常用的是以下 6 个命令:git clone、git push、git add 、git commit、git checkout、git pull,后面我们会详细介绍。
说明:
- workspace:工作区
- staging area:暂存区/缓存区
- local repository:版本库或本地仓库
- remote repository:远程仓库
一个简单的操作步骤:
<pre class="prettyprint prettyprinted" style="margin: 10px 0px 0px; padding: 0px; font-family: ConfluenceInstalledFont, monospace; color: rgb(23, 43, 77); font-size: 14px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;"> git add . $ git commit </pre>
- git init - 初始化仓库。
- git add . - 添加文件到暂存区。
- git commit - 将暂存区内容添加到仓库中。
创建仓库命令
下表列出了 git 创建仓库的命令:
命令 | 说明
| [git init](https://www.runoob.com/git/git-init.html)
| 初始化仓库 |
| [git clone](https://www.runoob.com/git/git-clone.html)
| 拷贝一份远程仓库,也就是下载一个项目。 |
提交与修改
Git 的工作就是创建和保存你的项目的快照及与之后的快照进行对比。
下表列出了有关创建与提交你的项目的快照的命令:
<colgroup><col><col></colgroup>
命令 | 说明
| [git add](https://www.runoob.com/git/git-add.html)
| 添加文件到仓库 |
| [git status](https://www.runoob.com/git/git-status.html)
| 查看仓库当前的状态,显示有变更的文件。 |
| [git diff](https://www.runoob.com/git/git-diff.html)
| 比较文件的不同,即暂存区和工作区的差异。 |
| [git commit](https://www.runoob.com/git/git-commit.html)
| 提交暂存区到本地仓库。 |
| [git reset](https://www.runoob.com/git/git-reset.html)
| 回退版本。 |
| [git rm](https://www.runoob.com/git/git-rm.html)
| 删除工作区文件。 |
| [git mv](https://www.runoob.com/git/git-mv.html)
| 移动或重命名工作区文件。 |
提交日志
<colgroup><col><col></colgroup>
命令 | 说明 |
| [git log](https://www.runoob.com/git/git-commit-history.html#git-log)
| 查看历史提交记录 |
| [git blame <file>](https://www.runoob.com/git/git-commit-history.html#git-blame)
| 以列表形式查看指定文件的历史修改记录 |
远程操作
<colgroup><col><col></colgroup>
| 命令 | 说明 |
| [git remote](https://www.runoob.com/git/git-remote.html)
| 远程仓库操作 |
| [git fetch](https://www.runoob.com/git/git-fetch.html)
| 从远程获取代码库 |
| [git pull](https://www.runoob.com/git/git-pull.html)
| 下载远程代码并合并 |
| [git push](https://www.runoob.com/git/git-push.html)
| 上传远程代码并合并 |
补充:
git rebase : 用途–合并多次commit、合并分支
该命令会改变历史,慎用。当该分支只有自己一个人开发时可以大胆使用
例如:如何合并大量的历史commit让其更简洁
- git log查看历史提交记录
- git rebase -i startpoint endpoint , 选择commit哈希码、重新编写commit注释
- git status查看并处理冲突、成功rebase
- 此时git push会提示让你先pull, 不要pull!否则白弄。直接git push -f 强制推送 (当前分支只有自己开发)