Git是一个优秀的分布代码版本控制系统,企业常用它来管理源码。你若需要进行团队开发和协作,抽点时间来学习一下Git是非常有必要的。
生成SSH公私钥命令:ssh-keygen -t rsa -C "xxx@163.com" -b 4096
注:-b 密钥的长度,默认长度为2048
Git 常用命令
本地仓库
git log reflog
git rest --hard hash-value
git log --oneline
git rest --hard HEAD^ #退一步 ^^#退二步
git rest --hard HEAD~3 #退三步
git diff apple.txt #和暂存区比较文件
git diff HEAD apple.txt #和本地库中比较
git branch -v #查看所有分支
git branch 分支名 #切换分支
合并分支,首先切换到被合并的分支上【合并后的分支名】,如master分支。 git checkout master
git merge 要合并进来的分支名
远端地址别名origin
git remote add origin https://github.com/atguigu2018ybuq/huashan.git
git push origin master #推送到master分支上
git clone 远程库地址 #创建本库,连接别名origin,初始化本地库
fetch+merge=pull
git fetch origin master
git checkout origin/master
切换回去 git checkout master
合并 git merge origin/master
git remote origin_ssh sshgithub地址
git push origin_ssh master
排除上传的文件
在~/.gitconfig文件中引入上述文件
[core]
excludesfile=C:UsersLenovoJava.gitignore
git checkout -b 【分支名】【git log hashvalue】
git branch --all --graph
git log --oneline -n4
gitk 图形界面
cd .git/objects/【目录】
git cat-file -t 【hashvalue】#显示类型 commit/tree/blob
git cat-file -p 【hashvalue] #显示内容
分离头指针--不与某个分支绑定的源码
git checkout 【git log hashvalue】
git diff HEAD HEAD~1
git branch -d【D】分支名 #清除分支
git commit -amend 【修改最后一次的commit的备注】
git rebase -i 【hashvalue的上一级--父级】#合并本地库的COMMIT 保留pick s为合并
git rebase --continue
git diff -cached #暂存区和本地库的区别
git diff #工作区和暂存区的区别
git diff temp master #比较两个分支之间的差异
git rest HEAD #用本地库恢复到暂存区
git checkout -- 【文件名】 #从暂存区恢复到工作区
git stash #临时处理其他任务,忽略现行修改
git stash apply
git stash pop
git stash list
git clone --bare /...../.git yar.git #备份
git clone --bare file:///.../.git zhineng.git
git branch -va #包含远端分支
git merge --allow-unrelated-histories github/master #允许不相干的两棵树合并
git checkout -b 【本地分支】【远端分支】
github搜索词 in:readme starts:>1000 language:JavaScript