git 工作随笔

git老是记不住。每次做个笔记。

远程上有 master develop 两个分支:

git clone https://github.com/liuhf/websocket-socket.io.git    会自动关联到本地master

git branch -a mydev                       从本地master检出到新的 mydev本地分支

working working working 

 

/***目的是 提交到远程develop分支***/

第一步切换到 develop分支。                                  比如在本地建立一个develop。(对应的远程分支也是develop)          //**  git checkout -b 本地分支名x origin/远程分支名x

git checkout -b develop origin/develop

 

 比因为在开发的保存的是在 mydev上,于是进行合并。

git checkout develop                       (切换到本地分支)

git merge mydev              ("合并到了本地的develop")

git pull --rebase              "消除不必要的commit 记录"

下面是正常的提交步骤了。

git commit -m "新的开发的功能";                       //如果失败使用 -am;

git push origin develop

 

git远程分支覆盖本地分支

有时候同一个分支,远程的和本地的都被修改的面目全非了,如果想要把本地的替换成远程的,用下面的命令

git fetch --all
git reset --hard origin/master (这里master要修改为对应的分支名)
git pull

git 拉取具体tag(commit)
git cherry-pick  v1.0.11(或者commit)
git diff  v1.0.1 v1.0.10
git add remote branch
git push --set-upstream origin mydev

   git reset --soft HEAD~1   不删除工作空间改动代码,撤销commit,不撤销git add

 

git 提交本地分支到远程分支。

   git push origin dev:romote_dev

   dev是本地分支。 romote_dev是远程分支,不存在会自动创建。

git log --graph --decorate --oneline --simplify-by-decoration --all  查看分支结构

 

 

关于LF和CRLF转换

git config --global core.autocrlf input #提交时转换为LF


git config --global core.safecrlf true #推荐,拒绝提交包含混合换行符的文件

 

 

git 给指定commit 打tag  

git tag -a V1.2 -m 'WebSite version 1.2'     //-m 后面的是标签说明。

git tag                                                                                    //查看标签

git push origin --tags                                                             //推送到远程

 



## git 删除 远程分支:
git push origin --delete [branch_name]

  ## git 追踪  git remote show origin
   ## git 删除不同步的记录  

git remote prune origin


## 远程分支自动追溯到本地分支。(有远程分支,无本地分支的情况)

git checkout --track origin/branch_name

 

 

 

posted @ 2019-12-25 13:48  七分sunshine!  阅读(159)  评论(0编辑  收藏  举报