常用命令:
git status 查看文件状态
git add . 提交到暂存区
git commit -m"update" 提交到分支
git pull 拉取分支内容
git push 推送分支内容
高级使用:
git branch 查看分支
git checkout -b dev 创建dev分支并切换到该分支
git checkout master 切换到master分支
git merge dev 合并dev分支
git branch -d dev 删除dev分支
bug分支使用:
如果现在dev分支
git stash 储存工作现场
git checkout master
git checkout -b issue-101 创建bug分支
修复bug后切换到master分支合并bug分支
git checkout master
git merge --no--ff -m"merged bug fix 101" issue-101 合并bug分支
git branch -d issue-101 删除bug分支
现在就可以切换到dev分支上继续工作了
git checkout dev
git stash list 查看工作现场
git stash pop 回复工作现场并删除stash内容
创建git库:
服务器操作,
mkdir dir test
cd test
git init --bare 初始化
chmod test:test test -R 修改用户和用户组所属
本地操作,
git clone test@xxx.com:/data/test 克隆
git push origin master 把新建的项目文件推送到主分支
为远程仓库设置 Hook
cd test/hooks
vim post-receive 输入一下并保存#!/bin/bash
git --work-tree=/home/wwwroot/test checkout -f关于 --work-tree 的详细介绍 请见
密码免输入
step1
在 C:\Users\Administrator 创建文件 .git-credentials , 内容如下:
http://{username}:{password}@git.oschina.com
step2
在项目目录 执行
git config --global credential.helper store
git checkout readme.txt 丢弃工作区的修改git reset --hard HEAD^ 回滚到上个版本git reflog 查看命令历史,如果你用了 git reset想后悔,那么可以用此命令弥补git clean -d -fx 从工作目录中移除没有track的文件-d表示同时移除目录,-f表示force,因为在git的配置文件中, clean.requireForce=true,如果不加-f,clean将会拒绝执行忽略已跟踪的文件:git update-index --assume-unchanged filename撤销用:git update-index --no-assume-unchanged filenamegitk 使用图形化工具查阅提交历史git gui 使用图形化工具查阅提交历史
常见错误解决
warning: LF will be replaced by CRLF
git config --global core.autocrlf false