一、git工作流程
工作流程:
1. 克隆远程资源库中项目代码到本地(本地会生成.git隐藏文件和项目代码,项目代码为工作区)
2. 对工作区代码进行添加,修改,删除一系列编辑操作
3. add 代码到暂存区(index)
4. 如果远程资源库代码有其他人提交新的版本,则需要拉取并合并到本地代码
5. 查看合并代码是否有冲突,若有冲突,修改之后,再一次 add 到暂存区
6. commit 代码到本地仓库
7. push 代码到远程资源库
我将git操作流程简单的绘制成一幅图,由图可清晰看出以一系列的操作步骤
二、git常用命令
1.从远端拉取并合并代码到本地仓库
git pull
2.将修改过的代码生成快照添加到暂存区
git add * 或 <filename>
3.将代码提交到本地仓库
git commit -m "..." //双引号内为:注释,代码修改信息摘要
4.提交代码到远程资源库
git push origin master //master可以换成其他分支名
5.设置git的user name 和Email
git config --global user.name "username" //username为远程资源库账号名
git config --global user.email "user@gmail.com" //user@gmail.com为远程资源库注册邮箱
6.克隆已有的远程资源库代码到本地
- https:// 协议
git clone https://github.com/username/demo
- ssh:// 协议
git clone git@github.com:username/demo.git
7.本地创建文件
git touch filename
8.使用当前目录为git仓库
git init //后面可加上指定目录作为本地git仓库
执行后,会在当前目录或指定的目录创建隐藏的.git
文件
9.查看状态
git status //查看状态完整信息
或者
git status -s //查看简短的状态信息
10.查看提交历史
git log //查看详细的提交历史
或者
git log --online //查看提交历史的简洁版
11.比较改动
工作目录暂存区比较
git diff
已暂存将要提交的内容(add后准备commit的内容)
git diff cached
12.移除和移动
移除(工作区移除,暂存区移除)
//工作目录移除
rm filename
//暂存区移除
git rm filename
移动(实现重命名)
git mv filename //待修改的文件
13.git分支管理
- 列出分支
git branch
- 手动创建一支分支
git branch branchname // branchname为分支名
- 切换分支
git checkout branchname // 切换到分支名为branchname的分支
- 手动创建分支并立即切换到该分支下
git checkout -b branchname // 手动创建一个名为branchname 的分支并立即切换到该分支下
- 删除分支
git branch -d branchname // 删除branchname分支
- 合并分支
git merge branchname // 将branchname分支合并到当前分支
三、异常
出现以下异常:
remote: Counting objects: 86, done.
remote: Compressing objects: 100% (82/82), done.
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: unpack-objects failed
执行如下操作
git config --global http.postBuffer 524288000
执行之后可能需要过一会儿才可以恢复正常使用