git常用命令
Git工作流程:
1、从git仓库checkout项目到工作目录中
2、在工作目录修改某些文件
3、对修改后的文件进行快照,然后保存带暂存区域
4、提交更新,将保存在暂存区域的文件快照永久转储到Git目录中
Git用户信息配置
个人用户名称和邮箱地址
设置你默认使用的文本编辑器和差异比较工具
$gitcongig--list
$gitconfig--globaluser.name"Zhangsan"
user.email""
core.editorvim
mergr.toolvimdiff
查看配置信息
$gitcongig--list
$gitconfig-l
显示帮助
$githelp<verb>
$git<verb>--help
$mangit-<verb>
进入任意一盘创建一个目录/文件夹
创建文件夹
$mkdirgitdemo#空文件夹不能被提交
$cdgitdemo
$gitinit
$gitstatus
添加一个文件
$vi1.txt""hello"
$gitadd1.txt#提交文件
$gitstatus#查看仓库的状态
$gitcommit-m"add1.txt"#提交-m是注释。"注释信息"
$gitstatus
(新建文件夹,初始化,添加文件,加到暂存区,加到仓库,修改源文件,比较查看修改,查看日志)
(红色:工作区;绿色:暂存区)
rm-rf.git/
echo<<
忽略某些文件
$vitest.tc
$vitest1.tc#创建多个tc文件
$vitext2.txt
$vi.gitignore#必须是没有被提交过的文件
*.tc#把忽略的文件添加到这里
$gitstatus
添加和跟踪文件
$gitadd.#添加新建的和修改的文件
$gitadd-u#添加修改的和删除的文件
$gitadd-A#加所有到暂存区
查看已暂存和未暂存的更新
$gitdiff1.txt#工作区(本地)和暂存区比较
$gitdiff--cached#暂存区与HEAD(仓库)比较
$gitdiffHEAD#工作区与HEAD比较
$gitdiffHEADHEAD^#HEAD与HEAD的父版本比较
看log
$gitlog
$gitlog-5#最近5次提交
$gitlog-p#所有提交日志
$gitlog--graph#已图形方式查看
$gitlog--pretty=oneline#所有提交日志就该内容
撤销
$gitlog
$gitreset--hard哈希版本号#重置到上一个状态
$gitreflog
$gitreset--hard哈希版本号#返回上一步
$gitresetHEAD^#回退仓库和暂存区
$gitreset--soft哈希版本号#回退仓库版本
$gitcheckout--fname#取消对文件的修改
$gitrevert#反转提交
删除文件/文件夹#只能删已经提交过的
$gitrmfilename#删除文件并存入暂存区(仓库没有删)
$gitrm-rffoldername#删除文件夹并存入暂存区
$gitmv[s_file][d_file]#重命名文件
$gitcommit-m"del5.txt"
$gitresetHEADfilename#删除文件从暂存区拉出来(暂存区没有删)
$gitcheckout--filename#本地恢复文件(本地没有删)
$gitstatus
查看标签
$gittag#查看标签
$gittagtagname#添加标签
$gittag-dtagname#删除标签
$gittagtagname哈希版本号#补打标签
/////分支操作
$gitbranch#查看本地分支,当前分支为绿色
$gitbranch-a#查看所有分支
$gitbranchbranch_name#创建分支
$gitcheckoutbranch_name#切换分支,提交之后再切换
$gitcheckout-bbranch_name#创建新分支并切换到新分支
$gitbranch-dbranch_name#删除分支
$gitmergebranch_name#子分支切换到主分支再合并分支
$gitpushorginlocal_branch:remote_branch#将本地分支推送到server
$gitpushorgin:remote_branch#删除server端分支
/////分支冲突
分支dev修改文件addcommit
主分支修改文件addcommit
在主分支上合并分支dev冲突
查看文件修改成主分支一样addcommit
/////贮藏(bug分支)
$gitstash#将当前的工作现场隐藏起来
$gitstatus
$gitstashsave"注释"#只能贮藏暂存区和未暂存的内容
$gitstashlist#查看本地的贮藏
$gitstashapply???#恢复贮藏并不删除
$gitstashdropstash@{0}#删除贮藏
$gitstashpop--indexstash@{0}#恢复贮藏并删除
/////贮藏冲突
修改文件不用add贮藏
修改文件addcommit
恢复贮藏冲突
gitmergetool
Bitbucket:
ssh-keygen-trsa-C"[email protected]"
key:C:\Users\Jaonne\.ssh\id_rsa.pub
拷贝key复制到BitbucketSettingsAccessKeys
推送master:$gitremoteaddoriginhttp://[email protected]/scm/~wx_panjj/joanne.git
$gitpush-uoriginmaster#第一次要-u
推送tag:$gitpushorigin--tags
推送分支:$gitpushorigin:dev
$gitpushorigindev
合并分支:$gitpull
$gitbranch-a
查看远程仓库信息:$gitremote#查看远程库的信息
$gitremote-v#详细信息
$gitremoteshoworigin
把远程仓库的项目克隆到本地:$gitclonehttps://....testgit2