1.git 将本地分支上传到远端分支下
注:git下常用命令
git config --global user.name "username" //添加用户名
git config --global user.email "userEmail" //添加用户邮箱
git config --global credential.helper store //保存用户名和邮箱
git init //初始化
git add . //添加更改到缓存index中
git reset HEAD --文件 //取消已缓存到index中的文件
git commit -m "修改" //本地提交修改HEAD中
git remote add origin <url> //添加远端地址
git push //推送到远端仓库repo中
git push -u origin master //上一个推送有错误时,用这个
git branch -a //git下列出所有分支,包括远端分支
git branch //列出本地所有分支
git merge branch_test //把branch_test合并到当前分支中
git branch branch_test //创建本地新分支branch_test
git branch -d branch_test //删除本地分支branch_test
git checkout branch_test //切换到branch_test分支下
git status //查看更改状况,及是否提交
git log //查看提交记录
git reset --hard xxxxx //根据git log的查询结果回滚到xxxxx(仅需要前五位)记录中
git fetch //从远端仓库下载新分支与数据
git pull //从远端仓库提取数据并尝试合并到当前分支,等于git fetch 后 git merge
git push //推送你的新分支与数据到某个远端仓库
git push branch_test master //将你的master分支推送到远端上的branch_test分支。
git clone <url> //从远端url地址中下载数据
注:更改origin的地址
git remote -v //查看origin的地址是否正确
git remote rm origin //删除分支origin
git remote add origin <url> //重新设置origin的值
或者
git remote set-url origin <url> //重新设置origin的值
(1). 上传一个独立的分支(把本地文件上传到一个的github上的repo中的一个分支下)
git init //本地初始化
git add .
git commit -m "注释"
git branch branch_test //创建新分支branch_test
git checkout branch_test //切换到分支branch_test
git remote add origin <url> //添加远端repo的地址
git push origin branch_test 会在远端创建分支branch_test并上传
git push origin :branch_test //删除远端分支branch_test,注意与上面的区别
git push origin master:branch_test //或者用这个(即2中方法)
(2). 上传一个与master相关的分支(该分支是从master中git clone得到的,.git文件中有相关信息,本地修改代码后上传)
git add .
git commit -m "修改"
git branch branch_test //创建新分支branch_test
git checkout branch_test //切换分支到brand_test
git push origin master:branch_test //提交本地branch_test分支作为远程的主分支master的新分支
git push origin :branch_test //删除远端分支branch_test
(3)Git新建本地分支与远程分支关联问题
git branch local_branch //新建分支
git checkout local_branch //切换到分支local_branch
git push --set-upstream origin local_branch //远端创建local_branch分支,并上传数据
(4) repo仓库和本地仓库不一致问题
git push -u origin master -f //会把远端文件删除,强制同步到远程仓库
(5)一个人创建仓库,接收别人pull请求过程
1.roct创建一个repo仓库,并完成仓库项目部分功能
2.jeck发现roct的项目中代码有bug
3.jeck使用"fork"把roct的项目搬进自己github上,之后,用"git clone <url>"克隆到本地,在本地进行修改bug,并添加加部分功能。
4.jeck把自己更改的内容,提交"git push"到自己github上。
5.jeck对roct提出"pull requests"请求,希望roct完善自己的项目。
6.rock发现"pull requests"请求,觉得合理,就同意了"git merge"。
7.rock的项目更加完善了。
(6) 和别人合作管理项目
1.github中仓库中"setting"--->"Collaborators"
2.Search by username, full name or email address搜索合作者用户名
3.即可事伙伴有管理这个项目的权利了。
(7) 删除错误提交到远端的文件夹,例如文件夹src
git rm -r -n --cached src/ //-n:加上这个参数,执行命令时,是不会删除任何文件,而是展示此命令要删除的文件列表预览。
git rm -r --cached src/ //最终执行命令.
git commit -m "delete invaild file" //提交
git push origin master //提交到远程服务器`
2. git常遇见的问题
(1). error: The following untracked working tree files would be overwritten by merge:
git add *
git stash
git pull