我的Git总结
基本概念
在你的本地仓库中会有git维护的三个区域:工作目录 Working Directory
、缓存区 Stage(Index)
、资源库 Repository
。并且还有一个远程仓库 Remote Directory
。
Working Directory
:你的工作目录,存放着实际文件。Stage/Index
:缓存区,也可以叫暂存区,临时保存着你的改动。Repository
: 这里就是有你提交到所有数据的版本,并且有一个HEAD
指向你最近一次提交后的结果。
常用的命令
Git一般常用的就只有几个命令,在前期也并不需要全部了解。
在本地搭建仓库
一般创建本地仓库有两种途径:
-
git init
在本地创建了一个新的
Git
仓库 -
git clone [username@host:/path/to/repository]
这就是从远程仓库中clone下来的一个仓库。这是我比较常用的一种方法。
添加与提交
会使用到的命令:
-
git add <filename>
(git add .
是添加全部) -
git commit -m "代码提交信息"
你可以将你想要提交上去的文件添加到缓存区,使用git add <filename>
这个命令。
当然,可以使用git add .
将所有文件添加上去。
添加之后,就可以使用git commit -m "代码提交信息"
提交改动。现在,你的改动也提交到了HEAD
。
记住这个时候,你想要提交的文件并没有放在远程仓库中。
推送改动
会使用到的命令:
git push
现在你的改动在本地仓库中的HEAD
中,可以使用git push
提交到远程仓库。
git push
可以看作是git push origin[远程仓库名] master[分支名]
的简写。
git push
没指定远程仓库名和分支名,默认就是指定的origin master
如果有多个分支,可以将master
换成你想要推送的任何分支。
但是如果你是使用
git init
建立的仓库,并没有克隆现有的仓库,且要将你的仓库连接到某个远程服务器, 就需要使用git remote add origin <server>
将改动推动到服务器上了。
分支
会使用到的命令:
-
git checkout -b [分支名]
是
git branch [分支名]
和git checkout [分支名]
的简写。
一般情况下,上面的命令也是够用了。
分支是用来将特性开发绝缘开来。在建立仓库的时候,master
是默认分支。在其他分支上进行开发,完成后再将它们合并到主分支上。
可以使用git branch [分支名]
来创建分支,并使用git checkout [分支名]
切换到这个分支。这里可以使用git checkout -b [分支名]
创建并切换到另一分支。
在分支中开发完成后使用git push origin <branch>
推送到远程仓库。
更新与合并
会使用到的命令:
-
git pull
:从远程仓库拉取最新的数据 -
git merge <branch>
:用来合并分支
在开发中,想要你的本地仓库是最新的,使用 git pull
更新你的本地仓库。
如果想要将其他分支合并到你的当前分支,可以使用 git merge <branch>
来合并。合并成功后,就又需要执行 git add .
等步骤来推送到远程仓库。
在合并改动之前,可以使用 git diff <source_branch> <target_branch>
来查看。
若有不正确之处,欢迎指出
转载自:https://juejin.cn/post/6985396772713693192