Fork me on GitHub

idea git 命令

git 不同于svn的地方时他拥有本地库,不必像svn那样必须在网络下同步。

git基本工作流程:

 

 

  • git clone:将远程的Master分支代码克隆到本地仓库
  • git checkout:切出分支出来开发
  • git add:将文件加入库跟踪区
  • git commit:将库跟踪区改变的代码提交到本地代码库中
  • git push: 将本地仓库中的代码提交到远程仓库

git 分支

  • 主分支
    • master分支:存放随时可供生产环境中的部署的代码
    • develop分支:存放当前最新开发成果的分支,当代码足够稳定时可以合并到master分支上去。
  • 辅助分支
    • feature分支:开发新功能使用,最终合并到develop分支或抛弃掉
    • release分支:做小的缺陷修正、准备发布版本所需的各项说明信息
    • hotfix分支:代码的紧急修复工作

------------------------------------------------

git branch -r: 查询远程有多少分支

git branch -a:查询远程和本地有多少分支

git branch :查询本地有多少分支

git branch xxx : 创建分支(如果分支名已经存在报:fatal: A branch named 'advance' already exists.)

git clone  克隆远程分支到本地

git checkout   本地分支名:切换本地分支

 

 

git checkout -b xxx -t origin/xxx :创建并切换分支并和远程分支关联

 

 

git branch -d xxx :删除本地分支(首先切换到别的分支,再删除)

 

 

git branch -D xxx :强制删除本地分支(首先切换到别的分支,再删除)

 

 

---------------------------------------------------

git remote:获取远程主机名

git remote -v :查看远程

git remote rm origin 删除远程origin 

 

 

 -----------------------------------------------------

git status:检查项目状态  // 未add的文件为红色  已经add的文件为绿色

将修改内容提交到缓冲区

git add . .为将全部修改提交

git add src/test/java/com/alihealth/drugsupervision/basicservice/ZookeeperTestCase.java 将具体的文件提交

git checkout --  xxx,xxxx   取消本地工作区的修改,把红色的修改取消了。

git commit -am "备注"  :提交更新到本地库  (-a 表示不用git add 文件,add并提交)

 

 

git pull <远程主机名> <远程分支名>:<本地分支名>

 

 

1、先git stash 将本地保存下

  git stash save "备注"  //养成备注习惯,可以避免许多问题

  git stash list  查看暂存列表

  git stash apply stash@{$num}   //num表示第num+1个,0表示第一个  。个人觉得此处用idea 界面unstash操作,好处是解决与本地文件冲突;

2、git  pull  如果是当前本地分支可不填本地分支名

 

 git fetch和git pull的概念:

 

 

 

git fetch是将远程主机的最新内容拉到本地,用户在检查了以后决定是否合并到工作本机分支中。
而git pull 则是将远程主机的最新内容拉下来后直接合并,即:git pull = git fetch + git merge,这样可能会产生冲突,需要手动解决。

 

git push <远程主机名> <本地分支名>:<远程分支名>

场景:

 

 

 

 

 

 结果:

 

posted @ 2020-02-12 18:34  小传风  阅读(974)  评论(0编辑  收藏  举报