git提交项目到已存在的远程分支

今天想提交项目到github的远程分支上,那个远程分支是之前就创建好的,而我的本地关联分支还没创建。

之前从未用github提交到远程分支过,弄了半个钟,看了几篇博文,终于折腾出来。现在把步骤整理下:

1、在项目文件目录下,打开Git Bash Here;

git提交项目到已存在的远程分支

2、使用git add命令,将我们要提交的文件信息(包括有修改过和新建的文件)添加到索引库。输入以下命令:

git add .

3、使用git commit命令,根据索引库的内容进行文件的提交。输入以下命令:

git commit -m "commit the user's jade"

PS:-m <提交的描述信息>

-m选项用于提交描述信息

4、新建本地分支:git branch <branchname>,输入命令:

git branch xf

5、查看该项目的所有本地和远程分支:git branch -a ,并在当前所在分支前加"*"标记

拓展:git branch 查看本地分支

git branch -r 查看远程分支

此处,我们查看所有分支,包括远程和本地,故输入命令:(该步骤可省略)

git branch -a

git提交项目到已存在的远程分支

6、切换本地分支:git checkout <分支名>,输入以下命令:

git checkout xf

git提交项目到已存在的远程分支

7、把远程分支的代码pull到本地分支:git pull <远程主机名> <远程分支名>:<本地分支名>

如:取回origin主机的xf分支,与本地的xf分支合并,输入命令:

git pull origin xf:xf

远程主机名可通过上方的git branch -a或git branch -r查询,看下图:

git提交项目到已存在的远程分支

PS:push代码前最好先用pull更新本地代码。

8、最后一步:git push <远程主机名> <本地分支名>:<远程分支名>

PS:注意,分支推送顺序的写法是<来源地>:<目的地>,所以git pull是<远程分支>:<本地分支>,而git push是<本地分支>:<远程分支>。

eg: 

git push origin xf:xf

上面命令表示,将本地的xf分支推送到origin主机的xf分支。

如果省略远程分支名,则表示将本地分支推送与之存在"追踪关系"的远程分支(通常两者同名),如果该远程分支不存在,则会被新建。

eg: 

git push origin test

上面命令表示,将本地的test分支推送到origin主机的test分支。如果后者不存在,则会被新建。

PS:提交远程分支有三种方式,我用的是下面第一种方法,大家有空也可以试下另外两种。

1. add并且commit,再checkout,提交到当前分支;

2. add但不commit,可以stash,然后checkout回来之后stash apply,在commit,提交到当前分支;

3. add但不commit,也不stash,直接checkout,然后再commit,(提交)记录就在切换分支下面。

如有写的不好、不对的地方,欢迎批评指教,谢谢~

相关推荐