使用git
webVueBlog opened this issue · 0 comments
1.配置环境
git --version
2.初始化git目录
git init
3.查看状态
git status
4.添加文件到暂存区
git add
项目下所有的文件变动一次性提交 使用git add --all
5.添加文件到版本库当前分支
git commit -m '详细信息‘
6.工作区,暂存区的关系
工作区:就是我们的项目文件夹不包括.git隐藏文件夹的区域
暂存区:Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区。 还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。
7.查看修改日志(提交历史)
git log
$ git log
commit a73f6890fa66a68919b57707505b597c7cd8761b (HEAD -> master)
Author: 小xx<xxx@qq.com>
Date: xxx6 15:09:10 2017 +0800
first updata
8.版本回退
假如我修改了很多次代码 提交了很多的不同版本到我的本地版本库分支master上 可是我发现最后一个有问题 我需要回到之前的版本怎么办?
这时候需要使用命令 git reset --hard 编号(编号就是commit id(版本号) 不需要写出完整的版本号 一般前8位以上就ok了)
$ git reset --hard a73f6890fa
HEAD is now at a73f689 first updata
此时版本已经回退到指定的版本号了 你可以看看你工作区的文件 是不是回到了之前的修改(神奇!)
9.查看文件差异
git diff命令
每次工作区修改完成后可以使用(对比本地文件一开始的样子)
$ git diff
diff --git a/index.html b/index.html
index 50c3720..9052a59 100644
--- a/index.html
+++ b/index.html
@@ -1,6 +1,7 @@
<!DOCTYPE html>
<html lang="en">
<head>
+ <h2>nihao</h2>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
10.撤销修改
分为三种情况
1)只在工作区修改了 没提交到暂存区 $ git checkout -- index.html撤销工作区修改(其实 git checkout -- file 就是用暂存区的版本来代替工作区的版本)
2)修改提交到暂存区之后 又修改了
先使用$ git reset HEAD index.html 将暂存区的修改撤销掉,重新放回工作区,然后重复1)中的命令
3)已经提交到本地的版本库分支master上了(前提是没推送到远程版本库)
使用版本回退
- 删除文件
分为两种情况:
1)误删
使用 $ git checkout -- index.html
2)确实要删
使用 $ git rm index.html
$ git rm index.html
rm 'index.html'
然后 $ git commit -m 'delete index.html'
使本地版本库的当前分支删除文件
$ git commit -m 'delete index.html'
[master 4e36418] delete index.html
1 file changed, 11 deletions(-)
delete mode 100644 index.html
使用$ git remote add origin 你的仓库ssh地址将远程库和自己的本地库连接
$ git remote add origin git@github.xxx/git-demo.git
连接成功后查看远程仓库地址 git remote -v
第一次提交时使用 git push -u origin master
(-u是使用流形式 速度更快 提交到远程库主分支master上)
git push origin master -f
强推
可以使用 git branch
查看本地分支
也可以查看所有分支(包括远程库的分支) git branch -a
创建分支
git branch 分支名
切换分支
git checkout 分支名
创建并切换一步到位
git checkout -b 分支名
合并分支
git merge 分支名
删除分支
删除本地分支: git branch -d
分支名
删除远程库分支: git push origin --delete
分支名
多人协作的工作模式通常是这样:
首先,在本地创建和远程分支对应的分支,使用 git checkout -b 分支名 origin/分支名,本地和远程分支的名称最好一致
然后,建立本地分支和远程分支的关联,使用 git branch --set-upstream 分支名 origin/分支名
现在,可以试图用 git push origin 分支名推送自己的修改;
如果推送失败,则因为远程分支比你的本地更新,需要先用 git pull试图合并;
如果合并有冲突,则解决冲突,并在本地提交;没有冲突或者解决掉冲突后,再用 git push origin 分支名推送就能成功!