# GitNotebook **Repository Path**: xiaoMaCode/git-notebook ## Basic Information - **Project Name**: GitNotebook - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-22 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README git init : init workspace git add : 将文件加入暂存区 git commit -m "..." : 将文件加入分支 git reset --hard HEAD^ : 回退到上一个版本,HEAD^^表示上两个版本,以此类推 git log : commit 日志,每个commit都有一个id git reset --hard xxxx : 到指定的版本, xxxx表示commit id git reflog : 查看历史命令 git status : 查看工作区以及暂存区的修改 git restore ... : 恢复工作区文件 git restore --staged ... : 撤销暂存区指定文件 -------------------------------------------------------------------------- -------------------------------------------------------------------------- 添加远程库: 1. 在GitHub上建立一个新的库 2. 根据提示在本地的仓库运行命令 3. 使用 git push -u origin master将本地内容推送到远程仓库里 从远程库克隆: 根据提示使用git clone命令 注意:以上两个使用ssh协议更加快,http有点慢 -------------------------------------------------------------------------- -------------------------------------------------------------------------- 分支管理: 1. git branch : 列出分支 2. git checkout -b dev : 创建分支dev并且转换到分支dev 3. git merge dev : 合并分支dev, 加上--no-ff表示普通模式合并,fast forward 看不出曾经做过合并 4. 合并无法自动完成时需要解决冲突再提交 5. git log --graph : 可以看到分支合并图 6. git stash : 可以保存并隐藏当前工作区 7. git stash list : 查看保存的区域 8. git stash apply stash@{xxx} : 表示恢复相应工作区,需要git stash drop来 删除 9. git stash pop : 恢复并删除 10. git cherry-pick [commit-id] : 将bug提交的修改复制到当前分支 11. git push <远程库> <分支> : 将当前分支修改提交到远程库 12. git pull : 更新本地库 13. git branch --set-upstream-to=origin/dev dev : 出现no tracking information时使用,用于创建链接 14. ... -------------------------------------------------------------------------- -------------------------------------------------------------------------- 使用github, gitee: 1. 两个都可以关联ssh协议 2. git remote add : 添加远程库, 默认为origin