1.Git常用命令流程
2.工作目录:
若在本地仓库添加文件,需要将其添加到本地工作目录。工作区是在电脑上看到的目录,例如reporstory文件夹就是一个工作区,.git隐藏文件夹是版本库,版本库中存储的stage的暂存区,创建分支master。
3.集中式管理:通过公共服务器,客户端将数据提交到服务中。
4.分布式版本控制系统:
5.git的三种状态与工作模式
基本流程:在工作区修改某些文件;对修改后的文件进行快照,然后添加到暂存区;提交更新,将暂存区的文件保存在本地仓库。
6.git的时光穿梭机
提交之前必须对内容进行暂存,将内容放置到暂存区才可以。
对误添加的内容进行撤销操作:git reset HEAD
查看历史版本:git log 简化输出日志:git log -5 --pretty=online
回退到上一级操作:git reset --hard HEAD^ git reset --hard HEAD~1
回退到上两级操作:git reset --hard HEAD^^ git reset --hard HEAD~2 以此类推
输出工作目录的内容:cat git01.txt
查看记录在本地的HEAD和分支引用在过去指向的位置:git reflog
文件删除:创建之后在工作区先删除,但本地仓库还存在,使用:git checkout -- git02.txt
若直接在本地仓库删除:git rm git02.txt,再执行git ls-files命令查看本地仓库文件。
7.远程仓库
GitHub基本操作和使用:
克隆远程项目到本地:git clone 远程文件地址
将本地库推送到远程仓库:git init git add README.md git commit -m 'first commit' git remote add origin 用户仓库地址 git push -u origin master
命令 | 描述 |
git checkout branch | 切换到指定分支 |
git checkout -b new_branch | 新建分支并切换到新建分支 |
git branch -d branch | 删除指定分支 |
git branch | 查看所有分支,并*号标记当前所在分支 |
git merge branch | 合并分支 |
git branch -m | -M oldbranch newbrench | 重命名分支,如果newbranch名字分支已经存在,需要使用-M强制重命名,否则使用-m进行重命名 |
分支push与pull操作
命令 | 描述 |
git branch -a | 查看本地与远程分支 |
git push origin branch_name | 推送本地分支到远程 |
git push origin :remote_branch | 删除远程分支 |
git checkout | 拉取远程指定分支并在本地创建分支 |
分支操作冲突:本地分支操作冲突,多人协同操作冲突
多人协同操作的冲突(两个人同时对同一文件进行修改和提交):拉取远程库dev并在本地创建dev开发库,执行命令git checkout -b dev origin/dev
使用git pull拉取当前操作,会显示当前冲突问题。
git标签管理
命令 | 描述 |
git tag tag_name | 新建标签,默认为HEAD |
git tag -a tag_name -m 'XXX' | 添加标签并指定标签描述信息 |
git tag | 查看所有标签 |
git tag _d tag_name | 删除一个本地标签 |
git push origin tag_name | 推送本地标签到远程 |
git push origin tag | 推送全部未推送过的本地标签到远程 |
git push origin :refs/tags/tag_name | 删除一个远程标签 |
8.配置SSH
9.git强制覆盖本地或远程代码
git push origin 分支名 --force //将本地代码强制提交到远程分支
git fetch --all
git reset --hard origin/master
git pull //Git远程服务器覆盖本地版本