zoukankan      html  css  js  c++  java
  • GIT 学习笔记

    此文记录一些git常用命令:

    git config --global credential.helper store 保存账号密码,不用每次都输入
    git config --global user.name "Your Name"
    git config --global user.email "email@example.com"
    git init  #用来把目录变成git可以管理的仓库
    ls -ah  #可以看见隐藏文件
    git add <file> #用来把文件添加到仓库,可一次添加多个文件
    git commit -m #"描述" 用来把文件提交到仓库
    git status  #用来查看仓库的当前状态
    1 git checkout -b feature-hu develop # 从develop分支新建并检出feature分支
    2 # 这里可以进行一些功能开发,并不断的add和commit
    3 # 切换回develop分支
    4 git pull origin develop # 更新远端代码,看develop分支是否有更新(无更新)
    5 git checkout feature-hu # 切换回feature分支
    6 git rebase develop # 合并develop分支到feature分支,并解决冲突(无冲突)
    7 git checkout develop # 切换回develop分支
    8 git merge --no-ff feature-hu # 合并feature分支到develop分支
    9 git push origin develop # 推送develop分支到远端
     1 git checkout -b feature-zz develop # 从develop分支新建并检出feature分支
     2 # 这里可以进行一些功能开发,并不断的add和commit
     3 git checkout develop # 切换回develop分支
     4 git pull origin develop # 更新远端代码,看develop分支是否有更新(有更新)
     5 git checkout feature-hu # 切换回feature分支
     6 git rebase develop # 合并develop分支到feature分支,并解决冲突(有冲突)
     7 # 这里需要进行冲突解决
     8 git add . # 解决完冲突之后执行add操作
     9 git rebase --continue # 继续刚才的rebase操作
    10 git checkout develop # 切换回develop分支
    11 git merge --no-ff feature-zz # 合并feature分支到develop分支(无冲突)
    12 git push origin develop # 推送develop分支到远端
    git diff # 用来查看文件做了什么修改
    git log --pretty=oneline # 命令显示从最近到最远的提交日志
    git reset --hard HEAD^ #回滚到上一个版本(最近提交)
    git reflog # 用来记录你的每一次命令
    git reset --hard commit_id
    git diff HEAD -- <file> # 用来查看工作区和版本库最新版本的区别
    git checkout -- file # 用来丢弃工作区的修改
    git reset HEAD file # 用来把暂存区的修改撤销掉,重新放回工作区
    git rm # 从版本库中删除文件
    git checkout -- file # 从版本库中恢复删除的文件
    git checkout # 是用版本库里的版本代替工作区的版本
    git remote add origin git@server-name:path/repo-name.git # 关联一个远程库 
    git push -u origin master # 第一次推送master分支的所有内容
    git push origin master # 第一次推送之后就可以使用该命令推送最新修改
    git clone git@github.com:GitHuUser/gitskills.git
    git branch # 命令来查看分支
    git branch <name> # 创建分支
    git checkout <name> # 切换分支
    git merge dev # 把dev分支的工作成果合并到当前分支上
    git branch -d <name> # 删除分支
    git log --graph # 命令可以看到分支合并图
    git log --graph --pretty=oneline --abbrev-commit
    git merge --no-ff -m "merge with no-ff" dev --no-ff # 参数表示禁用Fast forward
    git stash # 把当前工作现场"储存"起来,等以后恢复现场后继续工作
    git stash apply #恢复工作现场,但是stash内容不删除,可以用git stash drop删除,或者直接用git stash pop
    git stash list # 查看stash内容
    git branch -D dev # 可以强制删除分支
    git checkout -b dev origin/dev # 创建远程origin的dev分支到本地

    ====================***********************====================
    ====================***********************====================
    ====================***********************====================
    多人协作的工作模式通常是这样:

    首先,可以试图用git push origin branch-name -f推送自己的修改;

    如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;

    如果合并有冲突,则解决冲突,并在本地提交;

    没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!

    如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream-to=origin/远程分支的名字 本地分支的名字

    这就是多人协作的工作模式,一旦熟悉了,就非常简单
    ====================***********************====================
    ====================***********************====================
    ====================***********************====================

    总结

    这里总结了一个图,用来理解多人协同开发:

  • 相关阅读:
    李洪强九宫格的实现
    iOS开发多线程篇 11 —自定义NSOperation
    CALayer3-层的属性
    网络编程小结
    iOS开发多线程篇 10 —NSOperation基本操作
    CALayer2-创建新的层
    iOS开发之多文件上传
    三级联动
    用 ERD 盘解决 Win8 自己主动更新后不能启动的问题
    hdu1028(母函数+DP)
  • 原文地址:https://www.cnblogs.com/laowangc/p/8884284.html
Copyright © 2011-2022 走看看