Git

来源:互联网 发布:淘宝网找新疆核桃 编辑:程序博客网 时间:2024/06/05 01:59

Git(分布式版本控制器)

常用命令

mkdir git -demo:创建目录作为本地仓库
git init:初始化仓库
git config --glocal user.name "":配置名称
git config --glocal user.email "":配置邮箱
toucn readme:创建readme文件
cat 文件名:查看文件内容
git status:查看仓库状态
git add readme:添加文件到暂存区
git commit -m "备注":添加文件到分支版本中
vi readme:编辑文件加入hello git,并退出vi
git log:查看日志
git reset HEAD^:重置当前版本的上一个版本,HEAD^^上上个版本^^^依次类推
git reflog:查看日志包括回滚过的日志
git reset e06e80e:e06e80e为曾删除过的版本号
git checkout readme:重置暂存区内容到工作区,文件回到刚创建时状体
git remote add origin http://192.168.25.255/abc_sss/zz-ang-wb.git:添加远程仓库地址并且起名为origin
git push -u origin master:推送本地仓库分支到远程仓库的master分支
git fetch origin (git pull):抓取远程分支内容到本地,生成origin/master分支
git merge origin/master:合并origin/master分支到当前分支

(合并不成功时加:--allow-unrelated-histories)
(vi .git/config/touch/git clone)

IntelliJ IDEA中使用Git

配置Git:
IntelliJ IDEA-->Performance-->Version Control-->Git
将自己安装Git的可执行文件路径填入Path to Git Executable,点击Test测试一下
Git Clone:
VCS-->Git-->Clone
输入你的远程仓库地址,点击测试一下地址是否正确
Git Checkout:
IntelliJ IDEA右下角有一个Git的分支管理,点击选择自己需要的分支,Checkout出来
Checkout出来,会在底端显示当前的分支,其中1显示的为本地仓库中的版本,2为远程仓库中的版本
IntelliJ IDEA右上角向下箭头的VCS,将分支的变更同步到本地
Git Diff:
Local Changes中选中要比对的文件,右键选择Show Diff便可以查看文件的变动,或者选择Revert放弃文件的改动
Git Log:
Version Control下选择Log,可以查看提交历史
Git Commit:
默认导入的工程已经Git Add加入库跟踪区了
随便修改一下pom.xml文件,其修改的文件会显示在Version Control中的Local Changes下
点击IntelliJ IDEA右上角向上箭头的VCS,Git Commit,写上日志提交到本地代码库中
Git Push:
VCS-->Git-->Push将本地代码提交到远程仓库

IntelliJ IDEA命令行使用Git

(mac下同时按Alt+F12,进入IntelliJ IDEA命令行)

git clone:将远程的Master分支代码克隆到本地仓库(git clone xxxxxx)
git status: 检查项目状态
git checkout:切出分支出来开发
git checkout -b xxx -t origin/xxx:切换分支并和远程的分支关联
git pull:拉最新更新
git add:将文件加入库跟踪区
git commit:将库跟踪区改变的代码提交到本地代码库中(git commit -am "备注")
git checkout xxx:合并分支到当前分支,首先切换到需要被合并的分支
git merge yyyy:再合并
git push: 将本地仓库中的代码提交到远程仓库


常见错误

错误问题:

Error:Your local changes to the following files would be overwritten by merge:
protected/config/main.php
Please, commit your changes or stash them before you can merge.

解决方法:

保留生产服务器上所做的改动,仅仅并入新配置项
git stash
git pull
git stash pop
然后可以使用git diff -w +文件名,来确认代码自动合并的情况


用代码库中的文件完全覆盖本地工作版本
git reset --hard
git pull


错误问题:

VCS-->Git-->Pull一下GitHub中初始化的空仓库,但是执行VCS-->Git-->Pull报错

Git Pull Failed: fatal: refusing to merge unrelated histories
(Git失败:致命:拒绝合并不相关的历史)

解决方法:

此时需要再打开Git Bash,然后进入相应的目录

执行Git命令:$ git pull origin master --allow-unrelated-histories

原创粉丝点击