若git未设置用户和邮箱,需要运行以下命令,设置全局信息(包括用户名,邮箱地址)
git config --global user.name "wangzi"
git config --global user.email "[email protected]"
1、登陆GitHub,然后,在右上角找到“Create a new repo”按钮,创建一个新的仓库:myproject
记住地址:http://10.10.5.23/wangzi/myproject.git
2、cd 命令切换到需要添加到github 的项目的目录下,然后依次执行如下命令:
git init #初始化本地仓库
git add . #添加全部已经修改的文件,准备commit 提交,相当于git add -A
git commit -m ‘init’ #将修改后的文件提交到本地仓库
git remote add origin http://10.10.5.23/wangzi/myproject.git #连接到远程仓库并为该仓库创建别名 , 别名为origin . 这个别名是自定义的,通常用origin ; 远程仓库地址,就是你自己新建的那个仓库的地址
git push -u origin master #创建一个 upStream (上传流),并将本地代码通过这个 upStream 推送到 别名为 origin 的仓库中的 master 分支上
3、完上面三个步骤之后,就实现了将本地代码同步到github的功能,接下来要做的事情就是继续修改代码,然后提交并推送到github
git add . #添加全部修改的代码,准备提交
git commit -m ‘提交说明’ #将修改后的代码先提交到本地仓库
git pull #如果是多人协作开发的话,一定要先 pull ,将 github 的代码拉取到本地,这样在 merge 解决冲突的时候稍微简便些。默认拉取到 master分支(如果只是自己做这个项目,可以忽略pull)
git push #将代码推送到 github , 默认推送到 别名为 origin 的仓库中的 master 分支上。
4、注意事项:
如果有多个远程仓库 或者 多个分支, 并且需要将代码推送到指定仓库的指定分支上,那么在 pull 或者 push 的时候,就需要 按照下面的格式书写:
git pull 仓库别名 仓库分支名
git push 仓库别名 仓库分支名
5、若远程仓库已存在,仅是拉取,则执行:
git clone http://10.10.5.23/wangzi/myproject.git
cd myproject
......
上述命令拉取的是master分支,若想拉取指定分支,可执行上述命令后,再执行:
git checkout -b test
此时,本地存在两个分支:master和test,且当前分支为test
6、查看分支:
git branch -a #查看本地和远程分支
git branch #查看本地分支
7、创建新分支:
git branch test
再次执行git branch,可以看到本地分支增加了,但远程分支没有增加
执行git push origin test,将本地新建的分支推到远程上去
8、切换分支:
git checkout test
执行git branch,可以看到本地分支已切换到test分支(当前分支最前面会有 * 标识)
9、合并分支:
将test分支合并到master分支,要先切换到master分支:
git checkout master
再合并:
git merge test
如果有冲突,会提示你,调用git status查看冲突文件
解决冲突后,调用 git add,git commit 提交更改
强制合并:
git checkout master // 切换到旧的分支
git reset --hard develop // 将本地的旧分支 master 重置成 develop
git push origin master --force // 再推送到远程仓库
10、删除分支:
git branch -d test #删除本地分支,注意,当前分支不可删除
此时执行git branch -a,可以看到本地分支删除了,但远程分支还在
执行git push origin :test,将远程的test分支删除