git(分布式版本管理系统)
git是什么
git(分布式版本控制器) 不需要联网,直接存到本地,上传远程仓库才需要联网
svn(集中式版本控制器)
git配置
git config user.name (检查配置用户名)
git config user.email (检查配置邮箱)
git config --global user.name "用户名" (全局配置用户名)
git config --global user.email "邮箱" (全局配置邮箱)
git初始化
1、没有远程仓库
git init
2、有远程仓库
git clone 远程仓库地址
git常用指令
git status //检查当前本地git仓库的状体
git add . //把当前目录的所有文件和目录都管理起来
git commit -m "存档描述" //把当前管理的文件都进行存档
git log //打印日志,显示本地的存档和其他操作
git reset --hard 具体的id //回档操作,回到具体的某个存档
git reflog //打印所有操作日志,比git flog显示更多的内容
git clone 远程仓库地址 //克隆远程仓库地址到本地
git push //推送到远程仓库
git pull //拉取远程仓库最新的分支和代码合并到本地
git branch -a //检查所有的本地和远程分支
git merge xxx分支 //合并分支,注意先跳到master分支上再合并其他分支
git checkout xxx分支 //检出到具体某个分支上(切换分支)
git branch -d xxx分支 //删除具体某个分支
git fetch --prune origin //删除本地的缓存信息
工作区
工作区 暂存区 本地仓库 远程仓库
未管理的区域 已管理的区域 已存档 远程存档
避免每次提交都需要输入账号密码
git 提交代码时每次都要输入用户名密码,执行下面的操作就不需要了
第一步:git config --global credential.helper store (保存用户名/密码)
第二步:正常git pull /git push 后输入用户名和密码
后续就不需要输入用户名和密码
冲突
当远程仓库和本地仓库不一致或者分支不一致时,就会出现冲突。
解决冲突:把本地的代码先提交到本地仓库,然后拉取远程的仓库,然后执行手动合并,最后再重新提交。
git图形化界面
使用命令行不方便操作也不够直观,图形界面就可以解决这个问题。