git 学习

https://git-scm.com/book/zh/v2

http://blog.csdn.net/fuchaosz/article/details/52170105 //远程版本切换

  1. git checkout -b dev //切换分支

  2. git branch //查看当前分支
    3.git checkout master //切换分支

  3. git merge dev // 合并分支,将dev 的分支 合并到你当前的 分支里面(master,或则其他)

  4. git branch -d dev
    合并完之后就 把分支删除,此刻再次检查就 只剩下一个了

//备注:
在你 切换了分支之后, 添加了很多的东西 git add . git commit -m ‘’ 之后,你又切换到 master的时候,代码就全部变成 master的版本了

// 合并解决冲突

// 建议先 合并本地的,再pull 远程的解决冲突

文档 ::
查看分支:git branch
创建分支:git branch
切换分支:git checkout
创建+切换分支:git checkout -b
合并某分支到当前分支:git merge
删除分支:git branch -d

修复bug 的单独分支

•   查看远程库信息,使用git remote -v;
•   本地新建的分支如果不推送到远程,对其他人就是不可见的;
•   从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;
•   在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;
•   建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;
•   从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。

//回退版本
• HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。
• 穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。
• 要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

git remote -v //查看版本版本信息
git branch -va
git branch -vv
git log //查看commit 记录
git push origin dev //推送本地的 当前branch 到远程仓库

// 查看修改的 内容
git diff // 注意在git add . 之后便不会出现

git branch -vv //查看本地的版本与 远程的对应关系

git push origin test:master //推送本地的到 远程的 分支,(之前是没有远程的)

rebase
http://blog.csdn.net/hudashi/article/details/7664631/

//推送本地的 分支到远程的 形成远程分支
https://git-scm.com/book/zh/v1/Git-%E5%88%86%E6%94%AF-%E8%BF%9C%E7%A8%8B%E5%88%86%E6%94%AF

// git diff 未提交 commit 之前的 查看 版本文件的对比

git 学习_第1张图片
image.png

git 撤销未提交的修改

http://blog.csdn.net/xbl1986/article/details/8515953
git checkout fileName (未提交commit 的)
git checkout . (未提交的所有的)
// 已经commit 的
(2) git revert

撤销某次操作,此次操作之前和之后的commit和history都会保留,并且把这次撤销
作为一次最新的提交
* git revert HEAD 撤销前一次 commit
* git revert HEAD^ 撤销前前一次 commit
* git revert commit-id (比如:fa042ce57ebbe5bb9c8db709f719cec2c58ee7ff)撤销指定的版本,撤销也会作为一次提交进行保存。
git revert是提交一个新的版本,将需要revert的版本的内容再反向修改回去,版本会递增,不影响之前提交的内容

git mergetool
图形化冲突解决

//切远程分支
git fetch //先保证本地代码是与远程的一致的
直接 git checkout develop (直接同步线上的develop)//因为此处 远程有 develop(注意在这之前 git branch 是只有 master)

查看某个文件的历史改动

git 学习_第2张图片
image.png

命令:
1.cd xxx 文件夹
2.git log --pretty=oneline 文件名
3.git show 356f6def9d3fb7f3b9032ff5aa4b9110d4cca87e

你可能感兴趣的:(git 学习)