美文网首页
让git更高效--文末有福利

让git更高效--文末有福利

作者: smileklvens | 来源:发表于2018-04-28 07:18 被阅读0次
    image.png

    前言 GIT命令众多,在此仅是记录备忘而已。先上图片镇楼。哈哈,文末有福利,可免费下载git 指令速查表和和破解版beyond compare

    工欲善其事,必先利其器

    常用设置

    # 设置提交代码时的用户信息、
    $ git config [--global] user.name "[name]"
    $ git config [--global] user.email "[email address]"
    # 让Git显示颜色,突出新增文件,改变的文件等
    $ git config --global color.ui true
    
    

    设置别名,让git更高效

    $ git config --global alias.st status
    $ git config --global alias.co checkout
    $ git config --global alias.ci commit
    $ git config --global alias.br branch
    
    

    设置difftool和mergetool让git飞起

    //针对Git 2.3和更新
    1.启动Beyond Compare,进入Beyond Compare菜单并运行安装命令行工具。
    2.在终端中指定difftool
    $ git config --global diff.tool bc3
    3.在终端指定mergetool:
    $ git config --global merge.tool bc3
    $ git config --global mergetool.bc3.trustExitCode true
    

    使用

     $ git difftool file.ext
     $ git mergetool file.ext
    

    更多参考Beyond Compare设置
    您或者会问设置过这么多怎么查看生效没,简单只需要执行命令
    $ git config --list 或者在mac电脑
    Command + Shift + . 在 Finder 中显示隐藏文件然后查看比如我的电脑查看
    /Users/zhulk/.gitconfig

    image.png

    接下来实战

    首先检出或上传代码(在git未建立关联前)

    //默认下载master分支
     $ git clone [url]
    //检出指定远程分支
     $ git clone -b xxxx [url]
    //第一次上传本地到git,首先建立远程关联,首次推送一定要加上 -u
    $ git remote add origin [url]
    $ git push -u origin master
    
    

    接下里就能和其他小伙伴一起玩耍啦,不过为了更好的玩耍,先介绍以下三个小弟:
    1.stash
    暂存区,当我们项目做一半后,boss突然来了其他需求或者bug,你不得不暂时把你未完的工作存起来,解决后然后恢复继续工作。常用指令如下:

    //把未完工作暂存
    $  git stash
    //查看所有暂存
    $ git stash list
    //找回暂存,继续工作
    $ git stash pop 或者  $ git stash apply 
    $ git stash pop 或者  $ git stash drop stash@{0}
    

    2.branch
    一般项目,需要构建不同的分支,一般分为集成分支、功能分支和修复分支,分别命名为 develop、feature 和 hotfix。常用命令:

    //查看本地所有分支,有*号代表当前分支
    $ git branch
    //创建不存在的dev分支并切换到dev:
    $ git checkout -b dev
    //检出已经存在的master分支
    $ git checkout  master
    //合并dev分支到master分支
    $ git merge dev
    //删除dev分支
    $ git branch -d dev
    

    3.一次完整提交流程,好了接下来和小伙伴玩耍一次,来回拉取和提交代码

    // 添加指定文件
    $ git add [文件名]
    // 添加所有文件
    $ git add .
     //提交
    $ git commit -m "注释"
    //修改上次的提交注释
    $ git commit --amend
    //尝试推送到服务器
    $ git push
    ⚠️如果push失败并提示hint: Updates were rejected because the tip of your current branch is behind则执行
    
    //拉取远程最新代码
    $ git pull
    ⚠️git pull也失败了,提示There is no tracking information for the current branch.
    说明本地和远程分支没关联,git跟踪不到,需根据提示设置关联 比如本地dev和origin/dev的链接:
    //建立本地和远程分支的链接
    $ git branch --set-upstream dev origin/dev
    //在拉取远程代码
    $ git pull
    如果有冲突则需先解决冲突,然后再执行add-commit-push等命令
    //再次推送到服务器
    $ git push
    

    4.git指针
    每次提交都会生成一个commit id,并指向当前,如果我们覆盖了别人的代码,或者提交错误了,可以通过修改提交id,让代码回退,或者指向某次提交。
    常用命令:

    //查看提交记录,显示commitid,Author等信息
    $ git log
    // 指向某个版本
    $ git reset --hard [commId]
    
    

    关联多个远程,关联代码

    //关联GitHub的指定url
    $ git remote add github [url]
    // 查看关联的版本
    $ git remote -v
    ⚠️由于现在关联了多个远程分支,所以我们在pull和push相关操作时需要指明操作的具体分支;
    //如推送到远程github develop分支上
    $ git pull github develop
    $ git push github develop
    
    

    一般稳定后,每次发布后都会打tag,方便以后找回,修改未知bug等。

    //打tag
    $ git tag v1.0
    查看所有标签
    $ git tag
    //删除 标签
    $ git tag -d v0.1
    //推送标签到远程
    $ git push origin v1.0
    
    

    写在最后,如果你不习惯命令行,当然你也可以使用可视化工具,比如 常用的

    sourcetree tower

    资源

    下载git速查表
    链接:https://pan.baidu.com/s/1F0DLQ29UJ27v_YSHt7Cyow 密码:1huw

    Beyond Compare破解下载
    链接:https://pan.baidu.com/s/1n8siuZpDZObmEsw0aE7S3Q 密码:80t8

    如有疏漏,请指出不胜感激,如有问题可以通过如下方式联系我

    简书
    csdn
    掘金
    klvens跑码场

    相关文章

      网友评论

          本文标题:让git更高效--文末有福利

          本文链接:https://www.haomeiwen.com/subject/geuwlftx.html