git init
git
touch .gitignore(这里面能够写一些忽略文件,git add/commit/push的时候不会上传忽略文件,能够参照其它项目)
运维
git remote add origin 远程地址
工具
git add --all git add .
git config user.name "JerryMouseLi" git config user.email "j213@137.com"
git commit -m "提交备注"
学习
git pull origin master
pull包含了fetch跟merge将本地仓库的变化与远程仓库变化,同名文件合并。这里有冲突须要解决冲突。fetch
git push origin maste
命令行
git reset --hard commit_id
日志
`
git push origin master --forcecode
`orm
git log --pretty=format:"%ai , %an: %s" --since=“100 day ago” >> ~/Desktop/commit.log git log --pretty=format:"%ai , %an: %s" >> ~/Desktop/Readme.log 最终采用 git log --date=format:'%Y-%m-%d %H:%M:%S' --pretty=format:"%ad , %an: %s" >> ~/Desktop/Readme.log
选项 说明 %H 提交对象(commit)的完整哈希字串 %h 提交对象的简短哈希字串 %T 树对象(tree)的完整哈希字串 %t 树对象的简短哈希字串 %P 父对象(parent)的完整哈希字串 %p 父对象的简短哈希字串 %an 做者(author)的名字 %ae 做者的电子邮件地址 %ad 做者修订日期(能够用 -date= 选项定制格式) %ar 做者修订日期,按多久之前的方式显示 %cn 提交者(committer)的名字 %ce 提交者的电子邮件地址 %cd 提交日期 %cr 提交日期,按多久之前的方式显示 %s 提交说明
git branch -a 查看全部分支 git branch -r查看远程分支 git branch 查看分支
git clone -b CQDemo https://git.dev.tencent.com/xxx/xxx.git
对象
git fsck --lost-found //找回git add过可是已经不存在文件中的内容
git commit --amend
commit提供了一个--amend参数,能够修改最后一次提交的信息.可是若是你已经push过了,那么其历史最后一次,永远也不能修改了。
主要我用来导出git日志的时候用
git commit --amend --author "xw aa.hbl@gmail.com"
// 设置全局
git config --global user.name "Author Name"
git config --global user.email "Author Email"
// 或者设置本地项目库配置
git config user.name "Author Name"
git config user.email "Author Email"
咱们经常在代码封板时,使用git 建立一个tag ,这样一个不可修改的历史代码版本就像被咱们封存起来同样,不管是运维发布拉取,或者之后的代码版本管理,都是十分方便的
git 下打标签其实有2种状况
git tag -a V1.2 -m 'release 1.2'
上面的命令咱们成功建立了本地一个版本 V1.2 ,而且添加了附注信息 'release 1.2'
git tag
要显示附注信息,咱们须要用 show 指令来查看
git show V1.2
可是目前这个标签仅仅是提交到了本地git仓库.如何同步到远程代码库
git push origin --tags
若是刚刚同步上去,你缺发现一个致命bug ,须要从新打版本,如今还为时不晚.
git tag -d V1.2
到这一步咱们只是删除了本地 V1.2的版本,但是线上V1.2的版本仍是存在,如何办?这时咱们能够推送的空的同名版本到线下,达到删除线上版本的目标:
git push origin :refs/tags/V1.2
如何获取远程版本?
git fetch origin tag V1.2
这样咱们能够精准拉取指定的某一个版本.适用于运维同窗部署指定版本.