git
打标签
git tag -a 1.1.6 -m "1.1.6"
git push origin 1.1.6
删除标签
git tag -d 1.1.6
git push origin :refs/tags/1.1.6 # 删除远程仓库上的标签
用两行命令删除分支
// delete branch locally
git branch -d localBranchName
// delete branch remotely
git push origin --delete remoteBranchName
也可以使用这行简短的命令来远程删除分支:git push :,比如:git push origin :fix/authentication
基于某提交点创建分支:git checout -b <new_branch_name> <commid_id>
git rm -r --cached <file_or_dir> 忽略已跟踪的文件
解决 git gui 乱码: git config --global gui.encoding utf-8
git checkout -b 分支名创建新分支
git push origin master:新分支名创建新分支
git commit --amend 修改最后一次提交
git reset HEAD benchmarks.rb 或 git reset -- filename 取消已经暂存的文件
git reset HEAD~1 或 git reset HEAD^ 回滚最近一次提交
git checkout -- benchmarks.rb
git checkout -- benchmarks.rb 工作区中取消对文件的修改(将会删除刚才的修改,无法恢复)
git diff 工作区尚未暂存内容和暂存区的差异
git diff --cached 或 git diff --staged 暂存区和仓库的区别
git diff HEAD 显示工作区和 HEAD 的区别
git diff topic master 或 git diff topic..master 两个分支上最新的提交做 diff
git diff topic...master 输出自 topic 和 master 分别开发以来,master 分支上的 changed
git diff test 查看当前目录和另外一个分支的差别
git diff HEAD^ HEAD 比较上次提交 commit 和上上次提交
git diff SHA1 SHA2 比较两个历史版本之间的差异
git diff HEAD -- ./lib 显示当前目录下的 lib 目录和上次提交之间的差别(更准确的说是在当前分支下)
git rm xx.txt 删除文件如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f
git rm --cached readme.txt 把文件从 Git 仓库中删除(亦即从暂存区域移除),但仍然保留在当前工作目录中
git log --pretty=format:"%h - %an, %ar : %s" lib/bll/haofangbao.php
git pull --rebase origin app_project_debug
git blame 文件名会显示每一行最后一次改动
git reset --hard 撤销合并
git blame lib/dao/common/errordao.php|grep ""
git config --global credential.helper store 输入前执行下,以后输入一次密码,即可永久记住
git fetch
git merge origin/hfb_project_228 合并远程分支
git rebase --continue
git rebase --abort
git clearn -fd
git config --global core.excludesfile ~/.gitignore_global Git 设置全局忽略文件
[alias]
co = checkout
ci = commit
br = branch
st = status
git https 记住密码
设置记住密码(默认 15 分钟):
git config --global credential.helper cache
如果想自己设置时间,可以这样做:
git config credential.helper 'cache --timeout=3600'
这样就设置一个小时之后失效
长期存储密码:
git config --global credential.helper store
git 导出新修改的命令
git archive -o update.zip HEAD $(git diff --name-only HEAD)
撤销 git add
如果是撤销所有的已经 add 的文件:
git reset HEAD .如果是撤销某个文件或文件夹:
git reset HEAD -filename
撤销 git commit
在 git push 的时候,有时候我们会想办法撤销 git commit 的内容
1、找到之前提交的 git commit 的 id
git log
找到想要撤销的 id
2、git reset –hard id
完成撤销,同时将代码恢复到前一 commit_id 对应的版本
3、git reset id
完成 Commit 命令的撤销,但是不对代码修改进行撤销,可以直接通过 git commit 重新提交对本地代码的修改
git 忽略已跟踪的文件
git update-index --skip-worktree qq_core/src/main/scala/com/qq/net/MessageDecoder.scala
git update-index --no-skip-worktree qq_core/src/main/scala/com/qq/net/MessageDecoder.scala
要查看 Git 的提交历史
git log
这会显示提交历史,默认按时间倒序排列,最新的提交在最上方。每条提交信息通常包括提交哈希(commit hash)、作者名、日期、提交信息等。
git log --oneline
此命令以简洁模式显示历史,每条提交记录只显示一行,通常包括哈希值和提交信息。
git log --graph
这会在输出中加入图形,帮助可视化分支和合并的历史。
git log --stat
显示每次提交中修改的文件数量和行数的统计信息。
git log --author="用户名"
只显示指定作者的提交记录。
git log --grep="关键词"
查找提交信息中包含指定关键词的提交记录。
git log -n 5
限制显示最近的 5 条提交记录。
git log -- <文件路径>
查看特定文件的修改历史。
Git 全局设置
git config --global user.name "王威士"
git config --global user.email " wangweishi@greenvalleypharm.com "
创建一个新仓库
git clone http://192.168.0.97:8099/wangweishi/qikang_shop.git
cd qikang_shop
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master
推送现有文件夹
cd existing_folder
git init
git remote add origin http://192.168.0.97:8099/wangweishi/qikang_shop.git
git add .
git commit -m "Initial commit"
git push -u origin master
推送现有的 Git 仓库
cd existing_repo
git remote rename origin old-origin
git remote add origin http://192.168.0.97:8099/wangweishi/qikang_shop.git
git push -u origin --all
git push -u origin --tags
修改远程地址并推送现有仓库
git remote set-url origin git@gitee.com :xigexige/ztjs.git
git push -u origin --all
git push -u origin --tags
ssh-keygen -t rsa -C " wangweishi@green-valley.com "
git 仓库迁移命令