使用
1.拉取远程代码
git clone https://.git
2.拉取远程制定分支下代码
git clone -b <分支名> https://.git
3.将远程主分支代码拉到本地并合并
git pull origin master
4.将本地库提交到远程库
git push origin master
git config配置
1.git修改用户名和邮箱
git config --global user.email "you@example.com"
git config --global user.name "your name"
(该笔记是学习廖雪峰的官方网站的Git教程所记)
1.分布式控制系统
区别于CVS和svn的集中式版本控制系统,
集中式必须联网才能工作, 分布式每个人的电脑都是一个完整的版本库
创建Git版本库时,Git自动为我们创建了唯一一个master分支
(输入中包含引号回车,是会继续输入的,补齐后回车,ESC退出输入模式,o,i,a,进入输入模式,zz,wq保存修改退出. q!放弃修改退出)
2.git 的各种命令
git add 文件名 ; // 添加文件, 即添加到缓存区
git commit -m "说明"; //提交文件,提交更改,把暂存区的所有内容提交到当前分支
git status ; //查看具体信息
git diff ; //查看上次修改内容
git log ; //查看历史提交日志
git log --pretty=online ; //按一行 显示一个提交日志
git reset --hard HEAD^ ; //版本回退到上一个版本
git reset --hard 版本号 ; //回退到指定版本
cat 文件名 ; //查看文件内容
git reflog ; //记录每一次命令,可查看版本号
git diff HEAD -- readme.txt ; //查看工作区和版本库里面最新版本的区别;
git checkout -- file ; //可以丢弃工作区的修改
git reset HEAD file ; //撤销暂存区的修改,重新放回工作区
创建GitHub仓库
GitHub网站 右上角 点击 New repository 创建一个新的库;
Repository name 填入 learngit,创建;
git remote add origin git@github.com: github账号名/learngit,git; //关联你的远程库,库名 origin;
git push -u origin master ; //把本地库的所有内容推送到远程库上,这里地方会有一个SSH警告,输入yes回车;
git push origin master; //推送最新修改
git clone git @github.com:github名/gihub库名.git //从远程库克隆一个本地库
创建与合并分支
git branch dev; //创建分支
git checkout dev ; // 切换到分支
git checkout -b dev; //;两条命令合一,创建并切换
git branch; //查看当前分支,列出所有分支,当前分支前会有一个*号
git merge; // 用于合并指定分支到当前分支.
git branch -d dev; //删除分支
git log --graph --pretty=oneline --abbrev-commit ;// 直观的看合并分支情况
git log --graph ; //查看分支合并图
分支管理策略
git merge --no-ff -m "merge with no-ff" dev; //不用fast forward 方法合并分支;
多人协作
git remote -v; //查看远程库的信息
git push origin master; // 推送分支
git clone git@github.com:<github name>/库名.git ; // 这个地方如果想要在一台电脑上再克隆一个库的话,就新建一个文件夹,然后 在该文件夹下打开git.bash,然后克隆即可:
git checkout -b dev origin/dev ; //创建本地dev分支
git pull; //远程抓取分支
git branch --set-upstream-to=origin/dev dev; //设置本地dev与远程origin/dev分支的链接,
(分支管理部分有一些问题,大概还需要再研究一下)
标签管理
理解为版本号
git tag v1.0; //给当前提交打上标签
git tag; //查看所有标签
git tag v 2.0 <commit id>; //给之前的提交打上标签
git show v1.0; // 查看标签信息
git tag -a v2.0 -m "说明" <commit id>; //创建带有说明的标签 -a 指定标签名, -m 指定说明文字
git tag -d v1.0 ; // 删除标签
git push origin <tagname> ; //推送某个标签到远程
git push origin --tags; // 推送全部未推送到远程的本地标签
git tag -d v1.0; git push origin:refs/tags/v1.0; //删除远程标签,先删除本地标签