git 简单教程更新
0.初始化
$ git config --global user.name "xxx"
$ git config --global user.email "xxx@gmail.com"
$ ssh-keygen -t rsa -C “xxx@gmail.com”
按3个回车,密码为空。
最后得到了两个文件:id_rsa和id_rsa.pub
把pub文件粘到你的git里
0.1 本地初始化代码仓库
假设我的代码目录在D:\0-LBS-workspace\Quant,里面有不少文件。
启动git shell,到D:\0-LBS-workspace\Quant目录里,执行git int
到code京东创建自己的代码库 git@code.jd.com:username/测试先从本地创建推送上来.git
git remote add origin git@code.jd.com:username/测试先从本地创建推送上来.git
回到自己的电脑
git pull origin master
添加几个文件 git add file.py
git commit -m '第一次提交'
git push origin master
编辑一下 file.py
git add file.py
git commit -m 'modify'
git push origin master
把修改的也推送上去
0.2 克隆线上代码到本地
git clone git@code.jd.com:kayv/网络创建在拉到本地.git
会在当前目录下创建 “网络创建在拉本地”
创建个文件随便写点什么
git add teat.txt
git commit -m 'dd'
git push origin master
OK
gitignore 生效
git rm -r --cached .
git add .
git commit -m ".gitignore is now working"
-
附常用命令
HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭 git reset --hard commit_id 或git reset --hard HEAD(HEAD^等等) -
配置使用git仓库的人员姓名
git config --global user.name "Your Name Comes Here" -
配置使用git仓库的人员email
git config --global user.email you@yourdomain.example.com -
配置到缓存 默认15分钟
git config --global credential.helper cache -
修改缓存时间
git config --global credential.helper 'cache --timeout=3600'
git config --global color.ui true
git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.st status
git config --global alias.br branch
git config --global core.editor "mate -w" # 设置Editor使用textmate
git config -1 #列举所有配置 -
用户的git配置文件~/.gitconfig
git help
git show # 显示某次提交的内容
git show $id
git co --
git co . # 抛弃工作区修改
git add
git add . # 将所有修改过的工作文件提交暂存区
git rm
git rm
git reset
git reset -- . # 从暂存区恢复到工作文件
git reset --hard # 恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改
git ci
git ci .
git ci -a # 将git add, git rm和git ci等操作都合并在一起做
git ci -am "some comments"
git ci --amend # 修改最后一次提交记录
git revert <$id> # 恢复某次提交的状态,恢复动作本身也创建了一次提交对象
git revert HEAD # 恢复最后一次提交的状态
git log
git log
git log -p
git log -p -2 # 查看最近两次详细修改内容的diff
git log --stat #查看提交统计信息
-
初始化一个版本仓库
git init -
Clone远程版本库
git clone git@xbc.me:wordpress.git -
添加远程版本库origin,语法为 git remote add [shortname] [url]
git remote add origin git@xbc.me:wordpress.git -
查看远程仓库
git remote -v -
添加当前修改的文件到暂存区
git add . -
如果你自动追踪文件,包括你已经手动删除的,状态为Deleted的文件
git add -u -
提交你的修改
git commit –m "你的注释" -
推送你的更新到远程服务器,语法为 git push [远程名] [本地分支]:[远程分支]
git push origin master -
查看文件状态
git status -
跟踪新文件
git add readme.txt -
从当前跟踪列表移除文件,并完全删除
git rm readme.txt -
仅在暂存区删除,保留文件在当前目录,不再跟踪
git rm –cached readme.txt -
重命名文件
git mv reademe.txt readme -
查看提交的历史记录
git log -
修改最后一次提交注释的,利用–amend参数
git commit --amend -
忘记提交某些修改,下面的三条命令只会得到一个提交。
git commit –m "add readme.txt"
git add readme_forgotten
git commit –amend -
假设你已经使用git add .,将修改过的文件a、b加到暂存区
-
现在你只想提交a文件,不想提交b文件,应该这样
git reset HEAD b -
取消对文件的修改
git checkout –- readme.txt
git add -A stages All
git add . stages new and modified, without deleted
git add -u stages modified and deleted, without new