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图形化界面
使用命令行不方便操作也不够直观,图形界面就可以解决这个问题。
