要玩转 Git 并理解一些基本的命令,可以从以下几个方面入手:
基本概念
- *Repository (仓库)**:存储项目的地方,包括所有文件的历史记录。
- *Commit (提交)**:对文件的快照,记录了文件的状态。
- *Branch (分支)**:并行开发的独立线索。
- *Merge (合并)**:将分支的更改合并到另一个分支。
- *Remote (远程仓库)**:托管在服务器上的仓库,如 GitHub。
基本命令
- 初始化仓库:git init在当前目录下初始化一个新的 Git 仓库。
- 克隆远程仓库:git clone <repository-url>克隆一个远程仓库到本地。
- 查看仓库状态:git status显示当前分支的状态,包括未提交的更改。
- 添加文件到暂存区:git add <file-name>将文件添加到暂存区,准备提交。
- 提交更改:git commit -m “Commit message”提交暂存区的更改,并添加提交信息。
- 查看提交历史:git log显示提交历史记录。
- 创建新分支:git branch <branch-name>创建一个新的分支。
- 切换分支:git checkout <branch-name>切换到指定分支。
- 合并分支:git merge <branch-name>将指定分支合并到当前分支。
- 删除本地分支:git branch -d <branch-name>删除本地分支。
- 推送到远程仓库:git push origin <branch-name>将本地分支推送到远程仓库。
- 拉取远程仓库的更改:git pull从远程仓库拉取并合并更改。
学习资源
- Git 官方文档:详细介绍了 Git 的所有功能和命令。
- Pro Git 书籍:一本免费的电子书,全面介绍了 Git 的使用。
- 在线教程:如 Codecademy、Udacity 等提供的 Git 教程。
通过实践这些基本命令和概念,你可以逐步掌握 Git 的使用。
实用命令:
一.本地相关操作
1、git安装并与远程仓库关联相关配置
(1)初始配置
git config –global user.name “summer”
git config –global user.email 2403486284@qq.com
(2)配置别名:
git config –global alias.st status
git config –global alias.co checkout
git config –global alias.ci commit
git config –global alias.br branch
(3)ssh-keygen -t rsa -C “Huwz-intel”
(4)一直回车,然后open ~/.ssh
把.pub里面的内容复制在git网页的ssh key里面
(5)验证: ssh -T git@rdgit.300624.cn
2.首次拉取代码
(1) git clone -b develop –recurse-submodules git@rdgit.300624.cn:VsStudio/filmora11-win.git//拉取代码
(2) git checkout -b (develop / feature/web_tester)创建分支
(3) git pull
(4) git submodule update –init –recursive
3.处理本地未被跟踪的文件
(1) git clean -f 删除文件
(2) git clean -df 将文件所在的目录一起删除.
(3)-n参数可以看到那些文件会被删除,对应为命令:
git clean -nf
git clean -ndf
4.支持重复撤退,
git reset –soft HEAD^
5.终极处理命令
git rm –cached -r .; git reset –hard; git rm .gitattributes; git reset .; git checkout .
6.直接切换新分支搞定问题:
1、 git checkout -b feature_aa origin/release_7.14.0 (重要 : 切换并关联远端分支)
2、git branch -D release_7.14.0 强行删除某个命令
重新再来!几个小清洁命令:
(1) git br -vv
(2) git gc
(3)git remote prune origin
(4)git fetch –prune
(5)git stash –include-untracked
二.远程相关操作
1、本地代码提交到不同的远程分支提交处理方式
git push origin 本地分支名:远程分支名
如:git push origin release/v12_0_0:personal/huwz/v12_0_0
2、删除远程分支
git push origin –delete 远程分支名
如:git push origin –delete person/huwz/v12_0_0_propery_view
3、回退到最新代码分支处
Git reset –hard 远程分支SHA值
如·:git reset –hard 2b7631cd81a915b380eeb4ff00dbbd1df492e176 (commit SHA)
4.设置关联远端分支:
git branch –set-upstream-to=origin/remote_branch your_branch
5.git相关的常用命令
git cherry-pick 提交的hash值
例如:
a - b - c - d Master \ e - f - g Feature
现在将提交f
应用到master
分支。
# 切换到 master 分支 $ git checkout master # Cherry pick 操作 $ git cherry-pick f
6.实现代码回退
1、git revert 远程分支SHA值
2、git revert -m 1 远程分支SHA值 (merge类型的合并,需要处理reverting merge 也许)
三 修改配置的相关问题
1.修改host配置文件
方法一:
git remote set-url origin [url]
例如:git remote set-url origin https://ddns.togit.cc:7777/rffanlab/tensorflow_get_started_doc_cn.git
方法二:
git remote rm origin
git remote add origin [url]
2.远端分支合并到本地分支
(1)git checkout 主分支;
(2)git pull –rebase;
(3)git merge origin/远端分支名
(4)冲突解决 (vs code /小乌龟 / SourceTree)
(5)git commit -m “提交信息”;
(6)git push 远端去!
评论(0)