目录
一、Git命令-列表
命令 | 说明 |
---|---|
git log | 打印提交信息日志(commitID、作者、日期、注释) |
git log --pretty=oneline | 日志信息只显示commitID |
git reflog | 将所有的历史操作记录打印出来 |
git log filename | 查看此文件日志 |
git clone 链接 | 下载链接上的文件 |
git init | 新建本地仓库 |
git add filename | 文件进入暂存区、准备上传文件到仓库 |
git add --all | 将当前目录下包括子目录下(所有改动的文件:包括删除操作)提交到暂存区 |
git add . | 点表示当前目录,将目录里的现有文件(不包括删除操作)提交到暂存区 |
git commit -m “描述信息” | 上传文件到仓库 |
git rm | 删除文件进入暂存区,准备删除,需commit -m |
git status | 查看工作区文件的提交状态、 查看目前所在分区 |
git branch | 查看分支列表 |
git checkout --filename | 将文件撤销回到最近一次修改的状态 |
gir config -l | 查看所有配置信息 |
gir config --local -l | 查看仓库所有配置信息 |
gir config --global -l | 查看全局所有配置信息 |
gir config --system -l | 查看系统所有配置信息 |
gir config --local -e | 编辑仓库所有配置信息 |
二、Git命令-流程
2.1版本切换
git reset --hard commitID(这个ID可以通过log查看日志信息)
文件的内容随着版本的切换而改变
git reset --hard HEAD^(回退到上一个版本)
(HEAD为头指针的意思)
git reset --hard HEAD^^(回退到上上一个版本)
此操作会屏蔽掉无用的commitID,即使用git log命令不会出现当前commitID,需要使用git reflog命令才会出现commitID
2.2创建与删除分支
master是主分支指向最新的commitID,HEAD指针一开始指向master分支,当创建了其它分支时,HEAD指针就会指向其它分支。即HEAD指针总是指向当前操作的分支。
git checkout -b Wang(创建分支Wang,创建分支后需要add和commit才算完成分支的创建)
git checkout -d Wang(删除分支Wang)
合法删除非当前分支需要将分支合并起来,合法删除是为了防止误操作
git checkout -D Wang(强制删除分支Wang,当我们需要操作非当前分支时)
2.3切换分支
不同分支互不影响,互相看不见,不能操作非当前分支
git checkout master(切换到主分支)
2.4合并分支和冲突解决
在master分支上,进行合并。一般在master分支上进行代码的发布。
git merge Wang(将Wang分支合并到master分支上)
在master分支上,合并多个分支会发生冲突。
手动打开文件删除多余信息,并且去add和commit,则可以解决这个问题
2.5Git config和配置别名
git congif --global --unset user.name(删除用户名)
git config --global --add user.name Wang(添加用户名Wang)
命令太长可以用配置别名的方法来解决这个问题
git config --global alias.st status(st就代表status)
git status = git st
2.6打标签和忽略文件
commitID太长可以给他重新命名,即打标签
git tag v1(给最新的commitID打标签v1)
git tag v2 commitID(给某个commitID打上标签)
git tag v2 -m "标签v2"(给标签加上说明信息)
git tag -d v2(删除标签)
当某个文件不需要上传到git仓库时,告诉git忽略这个文件,不管理这个文件。使用status时也不会报错
- 首先创建一个.gitignore文件
- 在ignore链接中找到需要忽略的文件代码并将代码写入.gitignore文件中
- 将.gitignore文件add和commit
2.7本地仓库和远程仓库
本地仓库:代码不能共享开源
远程仓库:多人共享。GitHub和Gitee、Gitlab(免费)