git命令的复制来源
把每次使用git命令时需要通过搜索引擎查找的内容整理并保存下来,方便进行复制粘贴。将会逐步添加更多的内容。
撤销git add操作(不撤销更改内容)。
git reset HEAD hoge
修改上一个提交的消息。
git commit --amend -m "変更後のメッセージ"
用git add命令将已在git管理下的文件的更改暂存。
git add -u
虽然使用git add -A(-all)也可以,但会将未在git管理下的文件也加入暂存区,因此我认为先使用git add -u,然后再使用git add 文件名逐个添加会减少错误。
将特定提交合并到另一个分支
git cherry-pick "コミット番号"
-eでコミットメッセージを変更できる
-nでコミットせずにマージだけしてくれる
参考 : https://git-scm.com/docs/git-cherry-pick
複数コミットに対してまとめて実施
git cherry-pick "コミット対象の1つ前のコミット".."コミット対象の最後のコミット"
获取未跟踪文件的清单
git ls-files -o --exclude-standard
-o(–others) : git 管理外のファイルを対象とする
`–exclude-starndard : .gitignoreや.git/info/excludeなど除外対象になっているファイルを含む
进一步备份文件。
cpioコマンドに渡すことでファイルのバックアップを作ってくれる
git ls-files -o --exclude-standard -z | cpio -pmd0 出力先ディレクトリ
-
- 出力先ディレクトリは、git管理ディレクトリ外に配置すること。カレント配下とかだとgit cleanした時にバックアップも消える
-
- 参考 :
https://git-scm.com/docs/git-ls-files
https://gist.github.com/nflint/44712c41b38fbfed1bfa2555fbe053ae
删除远程代码库
git remote rm リポジトリ
撤销最近的提交
git reset --soft(--hard) HEAD^
-
- soft : コミットを無かったことにして変更自体はワークスペースに戻る
- hard : コミットを無かったことにして変更自体もワークスペースから削除する
从本地状态创建一个分支,然后将其推送到远程
当不希望将验证设置等放入功能分支时,可以从本地状态创建验证分支并在其中进行提交。
切换到创建分支的原始分支。
git checkout develop
创建分支
git checkout -b ブランチ名
将分支注册到远程
git push -u origin ブランチ名
只需要按照平常步骤执行git add、commit和push即可。
更改在git commit和rebase操作中使用的编辑器
git config --global core.editor <エディタ名>
# git config --global core.editor vi
# git config --global core.editor code -> エラーになってできなかった
使用reabse命令将提交合并为一次
请参考以下链接:
https://qiita.com/takke/items/3400b55becfd72769214
- コミットメッセージを残さない場合は、メッセージを残さないコミットをpick -> fixupにする