Git 使用技巧大全

Git

核心概念

Gitgit

git init
    git config --global user.name xxx
    git config --global user.email xx@qq.com  // (用户信息.gitconfig)

git命令格式

  • 格式:git 命令 参数
  • 帮助
    • git --help: git 经常使用命令
    • git 命令:查看当前命令的使用
    • git 命令 --help:查看详细的使用手册
    • git config core.autocrlf false: 取消换行符转换警告显示

git的三区设计

  • 工做区:日志文件的目录
  • 暂存区:.git隐藏目录
  • 本地库:.git隐藏目录,本地库保存的是当前工做区中提交的修改

经常使用命令

  • git status: 查看git仓库的状态
  • git add 文件:将文件的修改提交到暂存区
  • git commit -m "xx" 文件:修改提交到本地仓库github

  • git rm --cached 文件:从暂存区撤销要提交的文件(第一次时撤销)
  • git reset HEAD 文件:从暂存区撤销要提交的修改app

  • git checkout -- 文件:从本地库检出文件eclipse

  • git log --oneline 查看本地库状态
  • git reset --hard HEAD^ 回退一个版本
  • git reset --hard HEAD~n 回退一个版本
  • git reflog:查看全部操做历史记录
    • git reset --hard 版本号: 回到(回退和前进都行)指定的版本

分支操做

  • 经常使用命令汇总
    • git branch [分支名] 建立分支
    • git branch -v 查看分支
    • git checkout [分支名] 切换分支
    • git merge [分支名] 合并分支
    • git branch -d [分支名] 删除分支
    • git checkout -b [分支名] 新建并切换到当前分支
    • git log --oneline --graph

使用git fetch和git rebase处理多人开发同一分支的问题

  • 使用步骤:
    • git fetch
    • git rebase
    • 解决冲突
    • git add 冲突文件
    • git rebase –-continue
    • git push

参考文档:Git rebase使用ssh

  • 不一样分支之间的合并
    • master 分支
    • feature 分支
    git checkout feature
        编辑完内容后
        git add --all
        git commit -m "xxx"
    
        本地feature代码合并到master
        git rebase master
        解决冲突
        git rebase --continue (先将master最新代码合并到feature)
    
        git checkout master
        git merge feature
git remote -v
    origin  git@gitee.com:dchong/testgit.git (fetch)
    origin  git@gitee.com:dchong/testgit.git (push)

git stash

应用场景:测试

1.当正在dev分支上开发某个项目,这时项目中出现一个bug,须要紧急修复,可是正在开发的内容只是完成一半,还不想提交,这时能够用git stash命令将修改的内容保存至堆栈区,而后顺利切换到hotfix分支进行bug修复,修复完成后,再次切回到dev分支,从堆栈中恢复刚刚保存的内容。fetch

2.因为疏忽,本应该在dev分支开发的内容,却在master上进行了开发,须要从新切回到dev分支上进行开发,能够用git stash将内容保存至堆栈中,切回到dev分支后,再次恢复内容便可。url

git stash命令的做用就是将目前还不想提交的可是已经修改的内容进行保存至堆栈中,后续能够在某个分支上恢复出堆栈中的内容。git stash做用的范围包括工做区和暂存区中的内容,也就是说没有提交的内容都会保存至堆栈中。设计

  • 命令
git stash             将修改内容保存到堆栈中
    git stash save "xx"   等价于git save, 能够添加文字描述
    git stash list        查看当前stash中的内容
    git stash pop         将当前stash中的内容弹出,并应用到当前分支对应的工做目录上
    git stash apply       将堆栈中的内容应用到当前目录,该命令不会将内容从堆栈中删除。 git stash apply + stash名字(如stash@{1} -> git stash apply 0)指定恢复哪一个stash到当前的工做目录
    git stash drop + 名称  从堆栈中移除某个stash
    git stash clear        清除堆栈中的全部内容
    git stash show         查看堆栈中最新保存的stash和当前目录的差别
    git stash branch        从最新的stash建立分支

GitHub

ssh -T git@github.com   测试本地仓库和github的联通性
    git remote add  <远端代号>   <远端地址>
        <远端代号> 是指远程连接的代号,通常直接用origin做代号,也能够自定义
        <远端地址> 默认远程连接的url
        git remote add origin https://**

    git  push  -u  <远端代号>    <本地分支名称>
        <远端代号> 是指远程连接的代号;
        <分支名称>  是指要提交的分支名字,好比master 

    git remote –v       查看远程分支
    git pull <远端代号>  <远端分支名>       拉取远程库
        git pull origin  master
    git  clone   <远端地址>                克隆项目

git总结

eclipse git

设置git帐号

设置git帐号

设置ssh密钥

ssh密钥

将本地项目推送到GitHub

本地建立项目后,右键选择 Team — Share Project — git3d

share project

添加到暂存区team - add to index

提交到本地仓库team - commit

推到远程仓库team - push

相关文章
相关标签/搜索