Git 官网:https://git-scm.com。一个 Git 学习的在线书籍:https://www.progit.cn。
本篇记录 Git 的常用命令。
其他相关的博文为:
- GitHub和GitHub Desktop的使用
- 在本地使用Git实现文件的版本控制
- 两个独立的Git仓库的合并
- git commit 使用默认修改总结的设置方法
- 使用VSCode写Python、Latex、Markdown等
一、初始设置
- 查看:git config --list
- 设置邮箱:git config --global user.email "you@example.com"
- 设置名字:git config --global user.name "your name"
二、基本操作
- 文件夹git初始化:git init
- 添加修改的内容(添加到暂存区):git add .
- 确认修改内容(把暂存区的内容保存到本地仓库):git commit -m 'version_name'
- 除了第一次,之后可以同时执行以上两个命令,添加到暂存区且把暂存区的内容保存到本地仓库:git commit -am 'version_name' 或者 git commit -a -m 'version_name'
三、远程仓库信息
- 查看远程仓库名称:git remote
- 查看远程仓库名称和对应链接:git remote -v
- 查看远程仓库的详细信息(远程仓库名称通常是origin):git remote show origin
- 添加一个远程仓库到本地:git remote add origin https://github.com/username/repository.git
- 从当前仓库中删除指定的远程仓库:git remote remove origin
四、下载和推送
- 克隆/下载代码:git clone repository_address
- 克隆/下载代码(只下载最新一个 Git 历史记录,节省空间。如果之后有 git pull 操作,只会补充后续的所有历史记录。如果需要恢复所有历史记录,使用 git fetch --unshallow):git clone --depth 1 repository_address
- 下载远程仓库的代码并合并:git pull 或者 git pull origin
- 上传到远程仓库(本地分支名称通常是 master 或 main):git push origin master
- 上传到远程仓库(会将本地分支与远程分支关联起来):git push -u origin master,第一次关联之后可以直接 git push
- 强行上传并覆盖(本地分支名称通常是 master 或 main):git push -f origin master
- 获取远程仓库(当有多人协同操作时,可能会用到这个,获取后不会立即合并本地代码。通常可以直接用 git pull,立即合并):git fetch
五、分支管理
- 查看提交记录:git log
- 以简洁的一行的格式查看提交记录:git log --oneline
- 查看分支:git branch
- 查看远程仓库上的分支:git branch -r
- 创建分支:git branch new_branch
- 删除分支:git branch -d new_branch
- 切换分支:git switch new_branch
- 合并分支:git merge new_branch
六、历史查找搜索
- 在所有历史版本中搜索内容:git grep 'search_word' $(git rev-list --all)
- 查看是哪个具体的版本:git show <提交哈希值>
- 查看某个版本的具体文件:git show <提交哈希值>:<文件路径>
七、主分支的名称的修改
master 这个词在历史上有可能与奴隶制度或其他不太适合现代社会的词汇联系在一起,因此很多开源社区和平台(如 GitHub)决定将默认分支名改为 main,以避免可能的负面联想。而在本地通过 git init 创建一个新仓库,默认主分支会是 master 。
如果需要重命名主分支名称,可以按以下操作:
- 使用命令重命名本地的主分支:git branch -m master main
- 更新远程仓库的主分支名称:git push origin -u main,这时候远程仓库有两个分支,默认的还是 master 为主分支。
- 在 GitHub 或服务器上切换远程仓库的默认分支到 main,然后再使用命令删除远程的 master 分支:git push origin --delete master
其他参考资料:
[1] Git 创建仓库 | 菜鸟教程 (runoob.com)
【说明:本站主要是个人的一些笔记和代码分享,内容可能会不定期修改。为了使全网显示的始终是最新版本,这里的文章未经同意请勿转载。引用请注明出处:https://www.guanjihuan.com】