1.创建远程仓库
登录git ,创建远程仓库 your respositories - --> new ---> create respositories
--->
创建新仓库命令如下:
…or create a new repository on the command line
echo "# -SpringClould" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin git@github.com:yyd0927/-SpringClould.git
git push -u origin main
…or push an existing repository from the command line
git remote add origin git@github.com:yyd0927/-SpringClould.git
git branch -M main
git push -u origin main
…or import code from another repository
You can initialize this repository with code from a Subversion, Mercurial, or TFS project.
2.提交本地代码到远程仓库
git init ( 初始化目录为git目录,在目标文件夹下执行 )
git add README.md (添加文件到暂存区,git add .
把本地建立的项目 全部 暂存 )
git commit -m "first commit" (tips: 没有参数 -m
时,会进入vim编辑器; 按下字母键i或a或o,此时进入到可编辑状态,这时就可以输入你的注释;
当你输入完之后,按下 Esc
键就可退出编辑状态,回到一般模式。 最后就是怎么退出vim编辑器并提交commit, 有两种方法: 输入两字大写字母ZZ
(记住是大写) 输入:wq
或:wq!
(强行退出) )
git remote add origin https://github.com/yyd0927/-SpringClould.git (连接远程仓库地址)
git push -u origin master (提交到远程仓库 )
提交成功
踩坑提交代码到远程仓库时报错
error: src refspec master does not match any
原因:a. 没有创建主分支 b. 存在未跟踪文件 解决方案:删除本地 项目里的 .git文件 重新创建本地仓库和远程仓库的关系 ,随便提交1个txt文件 ,远程仓库会自动创建1个主分支,清除未跟踪文件,git status 找出文件名重新添加到暂存区 ,提交 。问题解决。
3.其他常用命令:
git pull 拉取 ,当前仓库下的git pull 都是拉取主分支的代码
git push 推送
git push origin *分支名* 推送到某个分支
git commit -m ‘提交的信息’
查看日志 git log (退出 英文q)
查看帮助 git branch -h
查看所有分支 git branch -a
创建develop分支 git checkout -b develop
切换分支 git checkout
创建和切换分支的快捷方式 git checkout -b 分支名 origin/分支名(本地没有的话会自动创建)
删除分支 git -D branch
重命名分支 git branch -m old_branch new_support
合并分支(两个分支git pull 拉取最新)
git 推送远端分支(创建) git push --set-upstream origin merge-branch
分支合并到主干(主干更新分支的代码)
1)切换到主干 git checkout master
2)假设已经有了修改的分支 git merge origin/*分支名*
3)推送 git push origin master
=========================================
git本地建立的仓库 推送 到远端已经创建的仓库
git init
git remote add origin git@....../xxxxx.git
git add .
git commit -m 'first' -n
//进入vim编辑器
按下字母键i或a或o,此时进入到可编辑状态,这时就可以输入你的注释
当你输入完之后,按下Esc键就可退出编辑状态,回到一般模式。
最后就是怎么退出vim编辑器并提交commit, 有两种方法:
输入两字大写字母ZZ(记住是大写)
输入:wq或:wq!(强行退出)
git push -u origin master
1、git无法pull仓库refusing to merge unrelated histories
(原因:因为他们是两个不同的项目,要把两个不同的项目合并)
git pull origin master --allow-unrelated-histories
==========================================
***远端回滚到某个commit代码***
---------------------------------
①通过git log 找到commit_id
( -number ) 查看最近number次的记录 -3 查看最新3条git commit
( --pretty=format:"%H %s") 格式化查看 commit 信息 %H 完整commit_id %s提交的信息
②git reset --hard commit_id 回滚
③git push origin HEAD --force 强推到远端
git status 查看本地仓库代码提交状态
git branch
建议先用git branch 先查看分支,跟着前面的分支命名 ,参数tips:-a
显示本地和远程分支(有时候太多分支并不能看到全部) -r
显示远端分支
git checkout -b branch_name
不带 -b 时任何参数是切换存在的分支
git push origin local_branch:remote_branch
推送到远端,local_branch
:本地已经创建的分支名 remote_branch
:推到远端的分支名(不存在则会创建) ,tips:如果remote_branch为空,则是清除远端分支
git pull origin master 拉取主分支代码
git branch --set-upstream-to=origin/example_branch 设置拉取的分支名为 example_branch 的分支
git push --set-upstream origin master
推到主干上
git push --set-upstream origin example_branch
推到分支名为 example_branch 的分支
git如何撤销上一次commit操作:
第一种情况,如果还没有push,只是在本地commit:git reset --hard <commit_id>
第二种情况,如果已经push:git revert <commit_id>
git上未跟踪文件处理,参考 https://www.cnblogs.com/wuchanming/p/5429768.html
git解决冲突 https://www.cnblogs.com/banshiliuli1990/p/12177522.html
git从主分支拉取代码到子分支 https://www.jianshu.com/p/f2b08edc9b34 (切换到子分支路径下再拉取执行 git checkout -b develop , git pull origin master )