Git基本使用方法
SVN与Git的最主要的区别
SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了。
Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。
Git是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识
git config --global 参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置
版本库
pwd 命令是用于显示当前的目录
命令 git init 把这个目录变成git可以管理的仓库
.git目录:Git来跟踪管理版本
git add readme.txt 添加到暂存区
git commit readme.txt 提交到仓库,把暂存区的所有内容提交到当前分支上
git diff readme.txt 查看文件修改内容
git status 查看文件状态
回退版本
git log 查看文件修改记录,显示从最近到最远的显示日志
git reset --hard HEAD^ 退回上个版本
git reset --hard HEAD~100
cat readme.txt 查看文件内容
git reset --hard 版本号 回到指定版本
工作区
版本区
git restore --readme.txt 丢弃工作区的修改
rm readme.txt 在文件目录删除文件
git checkout --readme.txt 在版本库中恢复文件
git连接远程仓库
github
git push add origin github仓库地址
git push origin master 把本地仓库分支master内容推到云仓库去
git push -u origin master
第一次推送master分支时,加上了 –u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
远程克隆仓库
git clone github仓库地址
git checkout -b dev 创建并切换分支
git cheachout 切换分支
git branch 查看分支,会列出所有的分支,当前分支前面会添加一个星号
git merge dev 在master分支上合并dev分支内容
git branch -d dev 删除分支
查看分支:git branch
创建分支:git branch name
切换分支:git checkout name
创建+切换分支:git checkout –b name
合并某分支到当前分支:git merge name
删除分支:git branch –d name