内容简介:git init:初始化仓库.该命令创建一个.git目录,这个目录包含必要的文件。但是此时还没有跟踪文件,需要通过git add添加跟踪文件.git status:用于显示哪些修改的文件已经暂存了,哪些修改的文件没有暂存,哪些文件没有被追踪.
git init:初始化仓库.
该命令创建一个.git目录,这个目录包含必要的文件。但是此时还没有跟踪文件,需要通过git add添加跟踪文件.
git status:用于显示哪些修改的文件已经暂存了,哪些修改的文件没有暂存,哪些文件没有被追踪.
基本用法:
查看哪些修改的文件已经暂存了,哪些修改的文件没有暂存,哪些文件没有被追踪,如下所示:
$ git status
On branch master
Your branch is up to date with 'origin/master'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
modified: src/main/java/Solution.java
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working >directory)
modified: src/main/java/Main.java
Untracked files:
(use "git add <file>..." to include in what will be committed)
.idea/
git diff:比较不同区域文件之间的差异,如工作区与暂存区的差异。
基本用法:
- 查看工作区里所有的修改了的文件与暂存区里的文件的差异:git diff
- 查看工作区中某个修改了的文件与暂存区中的文件的差异:git diff filename
git add:将修改文件添加到暂存区(当merge时出现了冲突,解决冲突之后通过此命令将文件添加到暂存区也表示冲突解决)、添加对文件的跟踪。.
基本用法:
- 添加文件至缓存区git add <path|filename>
- 添加文件至缓存区且表示问题解决:git add filename
git commit:将更改记录(提交)到存储库.
基本用法:
- 输入git commit,此时git会启动一个文本编辑器. 在文本编辑器中输入说明信息且保存.
- 如果上一次提交代码时,commit有错,可以使用git commit –amend进行修改.
git pull: 拉取远程分支的更新并与当前分支合并。
基本用法:
拉取远程分支的更新并与当前分支合并:git pull <远程主机名> <远程分支名>:<本地分支名>
git push:将本地分支的更新,推送到远程主机.
基本用法:
将本地的代码推送至远端:git push <远程主机名> <本地分支名>:<远程分支名>
git log:
基本用法:
- 查看某个文件的提交历史 git log filename
- 以图形形式显示分支信息 git log --graph --all
git reflog:查看所有的提交记录
基本用法:
当某次执行了git reset恢复至之前某个commit之后,使用git log就不再能够查看到该commit之后的提交记录了,此时可以使用git reflog查看所有提交记录:git reflog
git checkout:用于分支切换或者将某个文件恢复至某个commit
基本用法:
- 分支切换:git checkout 分支名
- 将某个文件恢复至某个commit:git checkout commit filename
- 用本地仓库的状态替换工作区的状态:git checkout -- filename
git reset:将当前分支回退至某个commit,方式为删除该commit之后的提交.
基本用法:
将当前分支回退至指定commit:git reset [--hard|soft|mixed|merge|keep] [<commit>或HEAD]
参数说明:
--soft 当前分支回退到指定的commit,并且不会删除任何文件,该commit之后修改的文件状态为已添加至缓存区中.
--mixed 重置索引,但不重置工作树,更改后的文件标记为未提交(add)的状态。默认操作。
--hard 重置索引和工作树,并且原分支修改的所有文件和中间的提交都被丢弃了。
git revert:将当前的分支回退至某个commit,方式为创建一个新的commit来回退.
git branch:进行分支相关的操作
基本用法
- 删除分支:git branch –d 分支名
- 创建分支:git branch 分支名
- 创建分支并切换分支:git branch –b 分支名
git stash:将当前工作区和暂存区的改动保存在堆栈中。
git stash pop:恢复工作区和暂存区的改动,并且删除堆栈此次记录的信息。
git rm:
基本用法:
将暂存区的文件删除git rm –cached 文件名
git merge:用于分支合并.
分支合并有两种方式:
- fast-forward,假设从master分支创建一条新的分支develop,在develop分支上进行了一些修改,但是在此期间master分支没有进行任何修改,那么在将develop分支合并到master分支的时候,只是简单的将master分支的指针右移。
- 创建新的commit,如果被合入代码的分支和合入分支都进行了修改,则此时需要创建一个新的commit,此时这个commit的祖先有两个,即被合入分支之前的最后一个commit和合入分支之前的最后一个commit。
基本用法
将分支合并到当前checkout的分支:git merge 分支名
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Head First Design Patterns
Elisabeth Freeman、Eric Freeman、Bert Bates、Kathy Sierra、Elisabeth Robson / O'Reilly Media / 2004-11-1 / USD 49.99
You're not alone. At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire),......一起来看看 《Head First Design Patterns》 这本书的介绍吧!
HTML 压缩/解压工具
在线压缩/解压 HTML 代码
HEX CMYK 转换工具
HEX CMYK 互转工具