1、创建仓库
mkdir GitResitory //创建文件夹
git init //将当前文件夹初始化为git仓库
2、创建一个文件并且将文件添加在仓库
vim readme.txt
git add readme.txt //将文件加入仓库
git commit //提交,本次操作结束
此时如果报错提示“*** Please tell me who you are.”,说明git不知道你是谁,执行下面两句话完成身份认证
1、git config user.name "dyang"
2、git config user.email "YangDong@boco.com.cn"
3、查看git仓库当前状态(确定是否有文件进行修改但是未提交到版本库)
git status
如果有文件更新并且需要提交到版本库的时候需要先git add,然后执行 git commit。
-
要随时掌握工作区的状态,使用git status命令。
-
如果git status告诉你有文件被修改过,用git diff可以查看修改内容
4、修改文件,然后重新提交
vim readme.txt
git add readme.txt
git commit -m “add gaojing love me too”
5、查看readme.txt文件的哪些内容被更改过
git diff readme.txt
6、回到旧版本
首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
git reset --hard HEAD^(回到上一个版本)
git reset --hard HEAD^^(回到上上一个版本)
现在总结一下:
-
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。
-
穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
-
要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。
7、git撤销
场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退一节。
场景4:在工作区做了很多修改,但是还没有commit,然后不想要这些修改,执行 "git checkout ."
8、使用远程仓库
首先使用命令生成公钥和密钥
1、在远程服务器上创建仓库
2、关联远程仓库
git remote add origin https://github.com/heibao111728/GitTest.git
3、将本地库的内容推送到远程库上
git push -u origin master
4、查看远程仓库
git remote
5、查看远程仓库地址
git remote -v
9、创建并切换分支
git checkout -b dev
git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:
$ git branch dev
$ git checkout dev
Git鼓励大量使用分支:
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
10、获取远程服务器文件
git pull
11、在已忽略文件夹中不忽略指定文件、文件夹
/node_modules/*
!/node_modules/layer/
【注意项】注意写法 要忽略的文件夹一定要结尾 /* ,否则不忽略规则将无法生效
12、git合并分支(将dev分支合并到master分支上)
1)git checkout master
2)git merge dev
13、git创建tag
1) git tag -a v1.0 -m "version v1.0, running gracefully and without memory leak."
2)查看tag:git tag。
注:默认情况下tag不会被推送到远程服务器,需要手动推送,如:
git push origin v1.0