git安装包下载:
链接:https://pan.baidu.com/s/18B8W... 提取码:ykvf
一、git基础模型
- Workspace:工作区,就是你看到的目录文件
- Index / Stage:暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
- Repository:本地仓库,就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本
- Remote:远程仓库,托管代码的服务器
二、文件4种状态
-
Unmodify: 未修改, 即与版本库中的文件快照内容与文件夹中完全一致. 如果它被修改, 而变为
Modified
. 如果使用git rm
移出版本库, 则成为Untracked
文件 -
Untracked: 未跟踪状态, 一般为新建的文件,不在版本控制内. 可通过
git add
状态变为Staged
. -
Modified: 已修改状态, 通过
git add
可进入暂存staged
状态, 使用git checkout
则丢弃修改过, 返回到unmodify
状态 -
Staged: 暂存状态. 执行
git commit
则同步到本地仓库, 这时库中的文件和本地文件又变为一致, 文件为Unmodify
状态
三、git仓库拷贝
1.在当前目录新建一个Git代码库
> git init
2.克隆远程仓库
> git clone [-b branch] [--depth 1] 远程仓库地址
-b branch:指定需要克隆的分支
--depth 1:depth用于指定克隆深度,为1即表示只克隆最近一次commit.
3.相关设置
> git config --list #查看git相关配置
> #设置提交的用户名和邮箱信息 --global:全局配置
> git config [--global] user.name 'github用户名'
> git config [--global] user.email '邮箱'
> #设置保存账号密码,这样只是第一次提交需要输入账号密码
> git config --local credential.helper store
四、git常见操作
1.本地文件上传至远程仓库
> git add file #从工作区添加到暂存区
> git commit -m '此次提交的说明' #从暂存区提交到本地仓库
> git push #推送到远程仓库
2.从远程仓库拉取到本地工作空间
> git fetch #从远程获取最新版本直接合并
> git merge #合并远端分支和本地分支,此时工作区更新
或者
> git pull #从远程获取最新版本直接与本地分支合并,等价于git fetch && git merge
3.其他常见命令
> #查看状态
> git status
> #查看提交日志
> git log [-p]
> #查看修改内容
> git diff
> #git撤销修改
> git checkout -- file #暂存区文件覆盖工作区
> git checkout master -- file #本地仓库文件覆盖暂存区与工作区,适用仅git add的文件
> git checkout origin/master -- file #远端分支文件覆盖暂存区与工作区,适用git commit的文件,但本地仓库已经修改,可执行git push提交到远程仓库,此时本地目录与远程仓库文件不同,且无法通过git pull更新,可执行git checkout master -- file
> ##修订提交
> git commit --amend -m '注释' #可实现仅修改刚刚提交的备注
> ##版本回退(慎用)
> git reset --hard HEAD^ #回退到上一个版本,等同 HEAD~1
> git reset \--hard 版本号 #回退到对应的版本
记录常见操作仅供参考!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。