所以创建一个版本库也非常简单,如下我是D盘 –> www下 目录下新建一个testgit版本库。
pwd 显示当前的目录************************************
1. 通过命令 git init 把这个目录变成git可以管理的仓库
2. 把文件添加到版本库中。
git add 1.php 添加到暂存区
git commit -m "1.php提交" 从暂存区提交到仓库
git status 查看是否还有文件未提交
修改了文件
接下来
git diff 1.php 查看问价改了什么样的内容
然后 add commit
git log 显示从最近到最远的显示日志
git log -–pretty=oneline 嫌上面显示的信息太多的话,简介显示
git reset --hard HEAD~100
git reset --hard HEAD^ 回退到上一个版本
git reset --hard 版本号 通过版本号回退恢复原来的信息
git reflog 获取所有的版本号
工作区 版本库 .get
stage暂存区
git 为我们自动创建了第一个分支master
指向master的一个指针HEAD
撤销修改************************************
1.readme.txt自动修改后,还没有放到暂存区,使用 撤销修改就回到和版本库一模一样的状态。 git checkout 1.php
2.另外一种是readme.txt已经放入暂存区了,接着又作了修改,撤销修改就回到添加暂存区后的状态。 git reset HEAD 1.php 从暂存区退到工作区 git checkout 1.php 从工作区直接恢复到原始状态
删除文件************************************
在目录中直接删除文件
同时 git status 查看状态
git checkout -- b.txt 或者是 git reset --hard 版本号 只要没有commit之前,在版本库中恢复此文件
git commit -a -m "删除b.txt文件" 在版本库中彻底删除b.txt文件
远程仓库************************************
只有存在仓库,才可以保湿用户可以进行开发,但是在d:\mypro 目录下已经存在有了一个本地仓库,所以下网把本地仓库发布到服务器上。
GITHUB 免费的服务器 用户可以直接在此往回走哪上定义属于自己的项目
注册 https:www.github.com
创建SSH Key 在windows平台下可以直接使用“git bash”工具创建
#######在git bash 中进行操作开始####################################################################
生成一个RSA编码的KEY
ssh-keygen -t rsa –C “[email protected]”
首先是保存位置;
里面注册的时候输入密码:815288
会自动在用户所在目录下生成一个“.sh” 的目录 ,里面保存有两个文件:id_rsa是私钥 id_rsa.pub是公钥
#######在git bash 中进行操作结束##########################################################
打开DITPUB的设置页面
选择“add an SSH Key”,表示要增加新的key
title cmdself
找到id_rs.pub文件的内容,把公钥的信息取出来 黏贴在key的位置(注意:别添加任何无用的内容)
1.在GITHUB上创建一个仓库
在个人设置那里 点击+----new repository
设置仓库的名称是:“mldn”
随后选择创建仓库,而仓库创建完成之后会给出两种连接方式:
ssh连接地址:[email protected]:summer815288/midn.git
https的连接地址:https://github.com/summer815288/midn.git
本地仓库必须视同以上的地址下可以发布到服务器上
2.把GITHUB与本地仓库相关联
git remote add zhaopin https://github.com/summer815288/zhaopin.git
(此时已经和远程仓库进行了连接,但是远程仓库里面并没有本地仓库的内容)
3.将所有的内容推送到GITHUB上
git push -u zhaopin master
(由于现在远程仓库中并没有任何的文件存在,所以以上是将所有文件进行推送。)
(但是由于是第一次推送,而且推送的为master分支,那么使用了一个“-u”的参数将远程的master和本地的master进行关联)
4.完成之后现在切换到GITPUB上进行观察
增加一个关联仓库
git remote add test [email protected]:summer815288/midn.git
git push -u test master
5.切换回origin仓库
git remote set-url origin https://github.com/summer815288/midn.git
6.观察现在远程服务器已经存在的仓库信息
git remote -v
7.删除仓库
git remote rm test
(现在只有一个仓库)
8.修改mypro中的文件 1.php
9.注意:此时所作出的修改属于本地的修改,需要将其提交到服务器上。
git commit -a -m "change File 1.php"
10.这个时候只是将其加到了本地的master分支上,但是远程的master分支依然没有发生改变。
所以下面需要进行客户端向服务器端的代码的推送
git push origin master
*********到此为止就完成了本地代码与服务器代码的同步************************
克隆仓库************************************
之前的讲解是:
先有了本地仓库,而后将本地仓库提交到远程仓库上进行管理,
但是这是一个错误的仓库,正确的做法是应该先有了远程仓库,而后根据此远程仓库克隆出一个姓的仓库来。
1.在GITHUB上初始化一个新的仓库。mldback
title-----mldnback
注意选中一个:“Initialize this repository with a README”
表示自动为用户进行仓库的初始化,并且会自动存在有一个“README”的文件存在。
仓库创建完成之后来观察一下此时仓库的内容。
2.在本地磁盘上进行仓库的克隆操作
cd / (不要在“d:\mldn”目录下完成,而直接是换一个新目录。比如在d盘的根目录进行克隆操作)
git clone https://github.com/summer815288/midn.git
在D盘手动中进行查找 midnback ,然后添加一个文件hello.txt
cd mldnback
git status
git commit -a -m "create hello.txt" //添加文件到缓存区并提交到仓库
git push origin master //更新服务器中的数据
再次查看GITPUB可以看到里边的文件已经得到更新
克隆其他的开源项目**************************************8
GITCUB有很多的开源项目;bootstrap mybatis
bootstrap : https://github.com/twbs/bootstrap
mybatis: https://github.com/mybatis
总结:
1.GITPU只是一个免费的远程仓库,并不能保证其的安全性。
Git基本常用命令如下:
mkdir: XX (创建一个空目录 XX指目录名)
pwd: 显示当前目录的路径。
git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件。
git add XX 把xx文件添加到暂存区去。
git commit –m “XX” 提交文件 –m 后面的是注释。
git status 查看仓库状态
git diff XX 查看XX文件修改了那些内容
git log 查看历史记录
git reset –hard HEAD^ 或者 git reset –hard HEAD~ 回退到上一个版本
(如果想回退到100个版本,使用git reset –hard HEAD~100 )
cat XX 查看XX文件内容
git reflog 查看历史记录的版本号id
git checkout — XX 把XX文件在工作区的修改全部撤销。
git rm XX 删除XX文件
git remote add origin https://github.com/tugenhua0707/testgit 关联一个远程库
git push –u(第一次要用-u 以后不需要) origin master 把当前master分支推送到远程库
git clone https://github.com/tugenhua0707/testgit 从远程库中克隆
git checkout –b dev 创建dev分支 并切换到dev分支上
git branch 查看当前所有的分支
git checkout master 切换回master分支
git merge dev 在当前的分支上合并dev分支
git branch –d dev 删除dev分支
git branch name 创建分支
git stash 把当前的工作隐藏起来 等以后恢复现场后继续工作
git stash list 查看所有被隐藏的文件列表
git stash apply 恢复被隐藏的文件,但是内容不删除
git stash drop 删除文件
git stash pop 恢复文件的同时 也删除文件
git remote 查看远程库的信息
git remote –v 查看远程库的详细信息
git push origin master Git会把master分支推送到远程库对应的远程分支上