一.合并远程仓库到本地
1.方法一
git fetch origin master
从远程仓库的master分支下载到本地
git log -p master .. origin/master
比较本地仓库和远程仓库的区别
git merge origin/master
把远程下载下来的代码合并到本地仓库
2.方法二
git fetch origin master:temp
从远程仓库的master分支下载到本地且新建一个临时分支temp
git diff temp
对比master分支和temp分支的区别
git merge temp
合并temp分支到master分支
git branch -d temp
删除临时分支 temp
二.解决冲突
2个人同时修改了一个文件,另一个人提交到版本库中了,你本地也修改,然后你使用
git pull
命令时,会出现冲突!
PS:记住,解决冲突时一定要保留自己的本地的代码,否则手残一番操作下来,也许你一天写的代码就没了,欲哭无泪
解决步骤如下:
git stash
将工作区恢复到上次提交的内容,同时备份本地所做的修改
git pull
再获取远程仓库的代码
git stash pop
将之前本地做的修改应用到当前工作区
这样冲突就解决了,还有额外的命令
git stash pop
从git栈中读取最近一次保存的内容 ,恢复工作区的相关内容,可能存在多个stash的内容,所以用栈来管理,pop会从最近的一个stash中读取内容并且恢复
git stash list
可以显示 git栈内所有的备份,可以利用这个列表决定从哪个地方恢复
git stash clear
清空git栈
三.提交指定文件
项目中,我们只想提交某个特定的文件时,可以使用下面步骤操作
1
git status -s
查看仓库状态2
git add src/views/home/文件名
将指定文件添加到本地仓库(需要加路径,路径可以使用 git status 打印的文件路径获取到)3
git stash -u -k
忽略其他文件,把现在修改的隐藏,提交时不会提交 没有add的文件4
git commit -m “ 提交记录”
5
git pull 拉取合并
6
git push 推送到远程仓库
7
git stash pop
恢复之前忽略的文件(一定要恢复)
四.建分支写代码
公司中.一般每个开发人员都拥有自己独立的分支,不会影响他人也不会被他人影响,最后需要整合代码时再进行整合
1
git branch xxxx
新建分支2
git branch
查看所有分支3
git checkout xxxx
切换到某分支4
git add .
添加到本地仓库5
git commit -m '备注'
6
git push origin xxxx
提交到某分支
五.本地分支和远程分支改名
工作中,如果我们分支名起的不太规范,需要修改分支名称的,我们可以使用如下操作
1.git branch -m old_branch new_branch
将本地分支进行改名
2.git push origin :old_branch
将远程分支的老分支删除
3.git push origin new_branch
将改名后的分支push到远程
六.切换远程仓库路径
有时候,我们需要更换远程仓库的地址路径,比如从https切换到ssh路径,因为https,每次提交时都让你输入密码,显然很麻烦,而使用ssh的话,就没这个限制了
1.git remote set-url origin URL
更换远程仓库地址,URL为新地址。
2.git remote -v
查看当前以及切换后的地址
基本操作指令
- 1.git config --global user.name "自己的名字"
- 2.git config --global user.email "邮箱"
- 3.git config --list 检测是否设置成功
- 4.建立项目,在根目录输入git init 初始化
- 5.项目根目录新建一个 .gitignore(需要忽略什么就在这个文件里面写什么文件夹的路径) 文件
- 6.查看git管理的文件信息: git status(git不管理空文件夹,如果有空文件夹,需要在空文件夹里面建立一个.keepgit)
- 7.工作区到暂存区: git add 要放到暂存区的文件名 git add 要放到暂存区的文件夹名/ git add . (所有的文件)
- 8.暂存区到工作区: git rm --cached 文件名 (从暂存区删除文件) git checkout -- 文件路径 (拉取暂存区文件,并替换成工作区文件) git reset HEAD -- 文件路径 (拉取最近一次提交到版本库的文件到暂存区,该操作不影响工作区)
- 9.暂存区到本地仓库: git commit -m "本次提交的历史版本的详细描述"
- 10.查看历史版本: git log
- 11.版本回退:git reset --hard Head (回退到最新版) git reset --hard 版本号 (回到指定版本) git reset --hard Head^ (回到最新版前一个版本,一个^表示最新版之前一个版本)
- 12.git reflog:查看所有的版本号
- 13.git diff:查看工作区文件和暂存区的区别
- 14.git diff --cached:查看暂存区和本地仓库 的区别
- 15.git commit --amend:撤销上一次提交,并将 暂存区文件重新提交
- 16.git branch 分支名:创建分支
- 17.git branch -d 分支名:删除分支
- 18.git checkout 分支名:切换分支
- 19.git branch:查看分支
- 20.git merge 要合并的分支名称 -m "新版本的描述"