git
git 指令:
git init 初始化本地git环境
git clone XXX 克隆一份代码到本地仓库
git pull 把远程库的代码更新到工作台
git pull origin master 强制把远程库的代码跟新到当前分支上面
git fetch 把远程库的代码更新到本地库
git add . 把本地的修改加到stage中
git commit -m ‘comments here’ 把stage中的修改提交到本地库
git push 把本地库的修改提交到远程库中
git branch 查看分支
$ git branch iss53 创建分支
git checkout -b fuwuqi 创建并切换分支
git 配置自己身份: 设置username 和 pass:
1. $ git config --global user.name "Colaplusice"
2. git config --global user.email "fjl2401@163.com"
远程仓库
git remote rm origin
删除远程仓库git clone https://github.com/Colaplusice/myweb.git
将项目从远程仓库拷贝下来git remote -V
查看远程仓库- 添加远程仓库
git remote add origin https://github.com/Colaplusice/JN.git
- 将远程仓库内容全部更新下来
git pull https://github.com/Colaplusice/myweb.git
https://github.com/Colaplusice/django_1.git
将 文件夹提交到远程仓库
git push -u origin master
git push -u origin master -f 强制提交 删除Git上的文件
git将本地文件上传到github
git init git add . git commit -m "first commit" git remote add origin https://github.com/Colaplusice/JN.git git push -u origin master
冲突
push失败 因为远程仓库已经有内容所以不能直接push
解决办法: 先pull下来,pull的时候再后面加命令 –allow-unrelated-histories
然后再push上去
pull失败,放弃本地文件:
git fetch –all
git reset –hard origin/masterpull 失败,保留本地文件
git stash
git pull
git stash pop
丢掉远端的内容,强制push
删除远端内容:git remote rm origin
强制提交:git push origin master –force
分支
git push origin Mac_branch:Mac_branch 推送本地分支到远程分支
clone 分支内容
git clone -b 分支名 仓库地址
切换到主分支并合并
git checkout master
git merge hotfix
git 分支合并
删除分支
git branch -d hotfix查看出现冲突的地方
git status
git 取回远程分支再合并
git fetch origin master
git merge
next 为分支名称
git pull origin next:master
为什么会产生冲突
本地内容和远程不一样
然后从远程pull下来竟然不覆盖?
那 远程内容和本地不一样,本地push怎么不会产生冲突…
应该是 本地 多了一个a 文件夹, 如果pull的话,a就要被删掉
所以有冲突
git 解决冲突的办法
ubuntu settings 是最新的
其他不是
从 master pull下来
settings产生了冲突
不用管 git add .
commit -m
push
完美解决
然后在本地库 git pull下来
git rebase 解决冲突
解决完后添加进去
git add -u
回退
回退到某个版本
git reset –hard aac3ddf40d2
回退到上个版本
git reset –hard head^