提交到远程分支的步骤
# git clone username@host:/path/to/repository //克隆远程仓库的项目
编辑内容。为了不覆盖别人在你下载以后的改动,需要先pull
# git pull //pull现有项目
# git add . //添加所有文件到缓存区
# git commit -m "文件提交信息" //增加文件提交信息
# git push //推送到远程仓库的默认分支
# git push origin master //提交到master分支,分支可自己修改
# git push //提交到默认分支
分支
分支是用来将特性开发绝缘开来的。在你创建仓库的时候,master 是“默认的”。在其他分支上进行开发,完成后再将它们合并到主分支上。
- 创建一个叫做“test”的分支,并切换过去:
git checkout -b test
- 切换回主分支:
git checkout master
- 再把新建的test分支删掉:
git branch -d test
除非你将分支推送到远端仓库,不然该分支就是 不为他人所见的:
git push origin <分支名>
整理
clone
- 克隆指定分支的项目:
git clone -b 分支名 username@host:/path/to/repository
- 同时克隆子模块
git clone --recurse-submodules username@host:/path/to/repository
git clone --recurse username@host:/path/to/repository
好像也可以
如图:Git中这样的文件夹就是子模块,如果直接git clone xxx
是无法克隆里面的内容的
git add不同方式的区别
git add -A和 git add . git add -u在功能上看似很相近,但还是存在一点差别
-
git add .
提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件。 -
git add -u
提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)。仅监控已经被add的文件(即tracked file),他会将被修改的文件提交到暂存区。add -u 不会提交新文件(untracked file)。(git add --update的缩写) -
git add -A
是上面两个功能的合集,即提交所有变化(git add --all的缩写)