基本区域介绍
git是一种代码管理工具,所以我们需要知道代码所在位置.分为4个区域:
Workspace:工作区
Index / Stage:暂存区
Repository:本地仓库
Remote:远程仓库
基本使用
1.准备工作:本地仓库和远端仓库建立唯一连接
第一次使用需要设置用户名和邮箱
git config --global user.name "Shyno"
git config --global user.email "shyno@gmail.com"
你也可以查看自己的配置
# 显示当前的Git配置 $ git config --list # 编辑Git配置文件 $ git config -e [--global]
这样你们就建立了唯一的连接.但是,进行代码操作的时候,git还会进行验证.远端仓库有自己的地址,一般会有https地址和ssh地址两种方式.
如果是使用https网址,则操作时验证用户名和密码,手动输入.
如果是使用SSH网址,则需要验证SSHKey,非手动.所以准备工作就多了一个设置SSHKey的操作.
2.克隆代码:下载一个项目以及所有代码历史
# 下载一个项目和它的整个代码历史
$ git clone [url]
注意url是哪种方式的地址.
到现在为止,还没有这个项目的本地仓库.
3.初始化仓库:如果已经将代码克隆下来了,可以在其根目录初始化一个本地目录.也可以先新建一个目录,初始化之后再克隆代码
# 在当前目录新建一个Git代码库
$ git init
# 新建一个目录,将其初始化为Git代码库
$ git init [project-name]
现在我们有两个互相关联的仓库,我们可以编写克隆下来的代码了,我们编写的时候,那些代码就是在所谓的Workspace:工作区.但是我们并不能直接把工作区的代码直接提交到远端仓库,这中间还有两个区域.你可以理解为:
克隆:远端仓库->工作区
提交:工作区->暂存区->本地仓库->远端仓库
4.提交暂存区:将代码先提交给暂存区
# 添加指定文件到暂存区
$ git add [file1] [file2] ...
# 添加指定目录到暂存区,包括子目录
$ git add [dir]
# 添加当前目录的所有文件到暂存区
$ git add .
5.推到远端仓库:将暂存区的代码推到远端仓库中
# 取回远程仓库的变化,并与本地分支合并 $ git pull [remote] [branch] # 上传本地指定分支到远程仓库 $ git push [remote] [branch] # 强行推送当前分支到远程仓库,即使有冲突 $ git push [remote] --force # 推送所有分支到远程仓库 $ git push [remote] --all
git的仓库管理并不是单向的,所以你仍可以执行撤销/删除操作
# 删除分支 $ git branch -d [branch-name] # 删除远程分支 $ git push origin --delete [branch-name] $ git branch -dr [remote/branch] # 恢复暂存区的所有文件到工作区 $ git checkout . # 重置暂存区与工作区,与上一次commit保持一致 $ git reset --hard
......
同时,也可以查看相关信息
# 显示有变更的文件 $ git status # 显示当前分支的版本历史 $ git log # 显示commit历史,以及每次commit发生变更的文件 $ git log --stat # 显示暂存区和工作区的差异 $ git diff .....
原文:https://www.cnblogs.com/Shyno/p/12518874.html