git 常用命令行

来源:互联网 发布:淘宝店铺一键发布宝贝 编辑:程序博客网 时间:2024/05/22 06:59

git 命令行

// 初始化本地仓库

git init

// 创建分支(默认为master分支)

git branch guyal 

// 切换分支

git checkout -b guyal

// 创建并且切换分支

git checkout -b guyal

// 查看当前分支

git branch  // (带 * 号的是目前所在分支)

// 合并分支

git checkout master // 切换到要合并的分支上git merge guyal // 合并guyal分支到master分支上

// 项目文件添加到版本库中(也就是本地暂存区),

git add ./  // (./表示添加文件夹下的所有文件)

// 把暂存区的文件提交到仓库

git commit -m "提交说明"

// 关联远程仓库

git remote add origin 项目远程仓库地址

// 远程仓库与本地文件同步合并

git pull --rebase origin master(你的分支)

// 推送到远程仓库

git push -u origin master

以上为基本流程

// 删除本地/远程分支
// 若删除失败,考虑master 为默认分支, 需要先创建自己的分支

git branch -d/D master // 删除本地master分支git push origin :master // 删除远程master分支
git branch guyal // 创建分支git push origin guyal:guyal // 将template分支提交到远程分支上git checkout -b guyal //创建并切换分支

// 版本回退
// git 本地版本回退

git reset --hard commit_id  // 使用git log 查看commit_id 

// git 远程版本回退

git push origin HEAD --force // 远程提交回退git reset --hard HEAD^1 (HEAD^1 版本回退上一版)git push --force // 远程提交回退 

// 查看提交日志

git log  // q键, 可退出查看日志状态

eg:

git logcommit 3018f35fcd3e86fcb0921245cacbf4a7d0a0d1b6 (HEAD -> guyal, origin/master, origin/guyal, master)Author: guyal <guyal_910@163.com>Date: Tue Nov 21 17:59:06 2017 +0800修复用户重新授权实时渲染commit 43fb35c3d938d79b5f4d17fdb13818547451fe79Author: guyal <guyal_910@163.com>Date: Mon Nov 20 18:15:13 2017 +0800四待模块页面基本完成commit da15a615bcbb3d4f8fe328d44c21db66398e54bfMerge: 35fdfdf aacb65bAuthor: YangYang <18103855639@163.com>Date: Mon Nov 20 10:44:06 2017 +0800update
git log --onelineeg:3018f35 (HEAD -> guyal, origin/master, origin/guyal, master) 修复用户重新授权实时渲染43fb35c 四待模块页面基本完成da15a61 update35fdfdf Merge branch 'yang-dev'9434aaf updateaacb65b 订单二级页面部分完成07d7251 待收货一级页面已完成2fba973 待付款页面已完成8e7430f 结算中心页面修改css样式已完成57649bb shopping cart interface completed9b5159f shopping cart interface completed32e5c0f completed8e2c497 completed

可看出以上两种方式的区别

// 分支合并

// 本地分支更新远程分支 (将本地分支合并到远程分支)

git push origin 本地分支名:远程分支名

// 远程分支合并本地分支

git pull origin 远程分支:本地分支

//查看远程主机信息

// 查看远程主机名称

git remote

// 查看远程主机网址

git remote -v

// 取回远程仓库上某个分支的更新, 再与本地的指定分支合并

git pull origin 远程仓库名 远程分支名:本地分支名

eg: 取回origin 主机上的dev分支, 与本地的guyal分支合并

git pull origin dev:guyal

如果远程分支是与当前分支合并, 冒号后面的部分可以省略.

git pull origin dev

// 同样的结果, 使用git fetch操作

git fetch origin  //git fetch 不会自动合并到本地,so.. git merge origin/dev  //fetch 完成之后需要merge

eg:

$ git merge origin/devfatal: refusing to merge unrelated histories

//解决方法(git 版本问题)
// merge之后如果出现fatal: refusing to merge unrelated histories, 则需要在其后加 –allow-unrelated-histories 即可;

git merge origin/yang-dev --allow-unrelated-histories 

// 合并解决冲突

<<<<<<< HEAD这里是你的本地代码=======这里是远程仓库的代码>>>>>>> dev

视个人情况删减代码

// 解决完成之后执行

git add -u // 把修改内容加入缓存, 然后在commitgit commit // commit 完成, 查看状态git status // 会自动进入vim , 输入:wq 即可退出git push -u origin guyal // 提交即可完成

// vim 保存退出vim 命令

按ESC键 跳到命令模式,然后:

:w 保存文件但不退出vi:w file 将修改另外保存到file中,不退出vi:w! 强制保存,不推出vi:wq 保存文件并退出vi:wq! 强制保存文件,并退出viq: 不保存文件,退出vi:q! 不保存文件,强制退出vi:e! 放弃所有修改,从上次保存文件开始再编辑

————–后续有待更新
新手上路,欢迎指正

原创粉丝点击