第一部分:Git配置
-
查看配置 git config -l
-
只查看系统配置 git config --system --list
-
只查看全局配置 git config --global --list 其实Git相关的配置文件都在本地
system级:Git安装目录下的gitconfig
全局级:用户目录下的.gitconfig -
修改配置:git config --global user.name "jeffduuuu"
第二部分 创建git项目
- 初始化项目 git init
- 克隆远程项目到本地 git clone https/ssh
第三部分 git的文件操作
- 查看可以看到的文件的状态 git status [filename]
- 提交到暂存区 git add . # . 表示全部文件
- 提交到本地仓库 git commit -m "new file hello.txt" # -m 后的参数是提交信息
- 合并指定分支到当前分支 git merge [branch]
第四部分 git的撤销与回滚
- git commit之前,且未添加到暂存区 git checkout -- [filePath]
- git commit之前,且添加到暂存区 git reset HEAD [filePath]
- git commit之后 git log # 查看commitid git revert [commitid] 执行奇数此回滚,偶数次回复
附录
- Git文件的四种状态
版本控制就是对文件的版本控制,要对文件进行修改、提交等操作,首先要知道文件当前在什么状态,不然可能会提交了现在还不想提交的文件,或者要提交的文件没提交上。
- Untracked:未跟踪,此文件在文件夹中,但并没有加入到git库,不参与版本控制。通过git add状态变为Staged。
- Unmodify:文件已经入库,未修改,即版本库中的文件快照内容与文件夹中完全一致。这种类型的文件有两种去处,如果它被修改,而变为Modified。如果使用git rm移出版本库,则成为Untracked文件
- Modified:文件已修改,仅仅是修改,并没有进行其他的操作。这个文件也有两个去处,通过git add可进入暂存staged状态,使用git checkout则丢弃修改过,返回到unmodify状态,这个git checkout即从库中取出文件,覆盖当前修改~
- Staged:暂存状态。执行git commit则将修改同步到库中,这是库中的文件和本地文件又变为一致,文件未Unmodify状态。执行git reset HEAD filename取消暂存,文件状态未Modified
- Git的提交流程