echo "Git is a version control system." > readme.txt
> 输入这句话保存到创建的readme.txt文件中
echo " Git is free software." >> readme.txt
>> 追加内容到readme.txt文件中
git add readme.txt 把文件添加到仓库
git add -A 添加所有文件
git commit -m "index"
-m 是本次提交的说明
git commit -a -m "index" 提交所有文件
可以一次add多个文件,然后一次性commit
git status告诉你有文件被修改过,用git diff可以查看修改内容。
git reset --hard HEAD^ 回退到上一个版本
上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
git reset --hard 3628164(版本号的前几位,没必要写全,git会自动寻找) 继上一部操作后,重新恢复到新版本
git reflog 记录你的每一次命令,(可以找到每一个版本的commit id)
工作区:在电脑里能看到的目录
版本库:.git
暂存区:也叫做索引,英文名称stage或index,一般存放在.git下的index文件(.git/index)
git checkout -- readme.txt 把readme.txt文件在工作区的修改全部撤销
1 文件自修改后还没有放到暂存区,现在,撤销操作就是回到和 版本库一模一样的状态: 回到最近一次git commit
2 文件已经放到暂存区,又做了修改,现在撤销修改就回到添加到暂存区的状态 : 回到最近一次 git add
git创建新仓库:
1 登陆github,创建一个webstudy库
2 cd到本地webstudy库中,创建ssh key
ssh-keygen -t rsa -C "1099594257qq.com"
一路回车
3 git remote add origin git@github.com:muyoushujuxian/learngit.git
添加后,远程库的名字就叫做origin,这是Git默认的,也可以修改,但是不建议修改,否则容易找不到
本地内容推送到远程库
git push -u origin master
将本地GIT版本库PUSH到一个GITHUB上一个空的版本库时可能会出现如下错误
error:src refspec master does not match any
原因: 本地版本库为空, 空目录不能提交 (只进行了init, 没有add和commit)
克隆远程库
git clone git@github.com:michaelliao/gitskills.git
分支管理
:每次提交,git都把它们穿成一条时间线,这条时间线就是一个分支
HEAD指向master,master指向提交,所以HEAD指向的是当前分支
git checkout -b dev 创建一个dev 的分支 -b 表示创建并切换 ,表示一下两条命令
git branch dev //创建dev分支
git checkout dev //切换到dev分支
git branch 查看当前分支
合并分支
git merge dev 合并指定分支(dev)到当前分支 master
删除分支
git branch -d dev
> 输入这句话保存到创建的readme.txt文件中
echo " Git is free software." >> readme.txt
>> 追加内容到readme.txt文件中
git add readme.txt 把文件添加到仓库
git add -A 添加所有文件
git commit -m "index"
-m 是本次提交的说明
git commit -a -m "index" 提交所有文件
可以一次add多个文件,然后一次性commit
git status告诉你有文件被修改过,用git diff可以查看修改内容。
git reset --hard HEAD^ 回退到上一个版本
上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
git reset --hard 3628164(版本号的前几位,没必要写全,git会自动寻找) 继上一部操作后,重新恢复到新版本
git reflog 记录你的每一次命令,(可以找到每一个版本的commit id)
工作区:在电脑里能看到的目录
版本库:.git
暂存区:也叫做索引,英文名称stage或index,一般存放在.git下的index文件(.git/index)
git checkout -- readme.txt 把readme.txt文件在工作区的修改全部撤销
1 文件自修改后还没有放到暂存区,现在,撤销操作就是回到和 版本库一模一样的状态: 回到最近一次git commit
2 文件已经放到暂存区,又做了修改,现在撤销修改就回到添加到暂存区的状态 : 回到最近一次 git add
git创建新仓库:
1 登陆github,创建一个webstudy库
2 cd到本地webstudy库中,创建ssh key
ssh-keygen -t rsa -C "1099594257qq.com"
一路回车
3 git remote add origin git@github.com:muyoushujuxian/learngit.git
添加后,远程库的名字就叫做origin,这是Git默认的,也可以修改,但是不建议修改,否则容易找不到
git remote rm origin 删除绑定远程库
本地内容推送到远程库
git push -u origin master
将本地GIT版本库PUSH到一个GITHUB上一个空的版本库时可能会出现如下错误
error:src refspec master does not match any
原因: 本地版本库为空, 空目录不能提交 (只进行了init, 没有add和commit)
克隆远程库
git clone git@github.com:michaelliao/gitskills.git
分支管理
:每次提交,git都把它们穿成一条时间线,这条时间线就是一个分支
HEAD指向master,master指向提交,所以HEAD指向的是当前分支
git checkout -b dev 创建一个dev 的分支 -b 表示创建并切换 ,表示一下两条命令
git branch dev //创建dev分支
git checkout dev //切换到dev分支
git branch 查看当前分支
合并分支
git merge dev 合并指定分支(dev)到当前分支 master
删除分支
git branch -d dev