Git的常用命令和使用

配置登录的内容

Git是分布式的版本控制系统
Git的第一件事就是设置你的名字和email,这些就是你在提交commit时的签名,每次提交记录里都会包含这些信息。使用git config命令进行配置:
git config --global user.email "***@gmail.com"
git config --global user.name "***"

上传更新

设置路径,到.git所在的文件路径下
    cd /c/Items/CorAna_Spark/
    git status
    git checkout --  .idea/workspace.xml
将改动添加到索引中
    git add src/main/scala/Util.scala 
注释改动 
    git commit -m "整理"
推送本地的修改到远程Git仓库
    git push origin feature/test
  如果远程仓库修改了git pull合并最新的修改后再执行git push

切换分支

命令可以查看当前的分支列表以及当前处在哪个分支上<星号标识>
    git branch  
切换分支
    git checkout master   切换
    git checkout -b feature/Relations  在上一个分支中新增
合并分支
    git merge master  将master合并到当前分支
恢复版本
    git reset --hard HEAD^
    git pull origin master
查看远程仓库
    git remote -v

其他

比较不同
    git diff
撤销(revert)了前期修改的提交(commit)
     git revert HEAD
日志系统
    git log
    git log --stat
快捷键
    ctr+r  输入可以快捷调出历史命令

git的文件系统

 .gitignore 配置文件用于配置不需要加入版本管理的文件
一个隐藏的.git文件件
    1.hooks:这个目录存放一些shell脚本,可以设置特定的git命令后触发相应的脚本;在搭建gitweb系统或其他git托管系统会经常用到hook script。
    2.info:包含仓库的一些信息
    3.logs:保存所有更新的引用记录
    4.objects:该目录存放所有的Git对象,对象的SHA1哈希值的前两位是文件夹名称,后38位作为对象文件名
    5.refs:具体的引用,Reference Specification,这个目录一般包括三个子文件夹,heads、remotes和tags,比如,heads中的master文件标识了项目中的master分支指向的当前commit,其他类似。
    6.COMMIT_EDITMSG:保存最新的commit message,Git系统不会用到这个文件,只是给用户一个参考
    7.config:这个是GIt仓库的配置文件
    8.description:仓库的描述信息,主要给gitweb等git托管系统使用
    9.index:这个文件就是我们前面提到的暂存区(stage),是一个二进制文件
    10.HEAD:这个文件包含了一个分支(branch)的引用,通过这个文件Git可以得到下一次commit的parent,什么是引用呢,你可以理解为指针,哪儿都可以指,但是不能指向没有的东西。
    11.ORIG_HEAD:HEAD指针的前一个状态

blogroll

social