首页 > 代码库 > GIT
GIT
第一步:设置全局变量:
- git config --global user.name "gang.li"
- git config --global user.email "ligang@ptthink.com"
第二步:初始化仓库,并推送到远程仓库(如果第一次推送执行此步骤,否则跳过此步骤):
- /* 创建项目文件夹,并初始化仓库 */
- mkdir test
- cd test
- git init
- /* 新增README文件,并提交*/
- touch README
- git add README
- git commit -m ‘first commit‘
- /* 关联远程仓库,并推送 */
- git remote add origin git@git.*.jp:gitlab/test.git
- git push -u origin master
第三步:克隆远程主机项目到本地,并建立对应分支
- git clone git@git.*.jp:gitlab/test.git
- git checkout -b develop
- git branch --set-upstream develop origin/develop(git branch --set-upstream-to=origin/develop develop)
第四步:增删操作,并推送到指定远程分支
- /* 删除文件(git rm 本地文件并不会被删除) */
- git rm -rf target
- git add .
- git commit -m "claer"
- git push origin develop
第五步:合并分支:
- /* 查看所有分支 */
- git branch -r/-a
- /* 合并develop到master分支 */
- git checkout master
- git merge --no-ff develop
- git push origin master
默认情况下,Git执行"快进式合并"(fast-farward merge),会直接将Master分支指向Develop分支。使用--no-ff参数后,会执行正常合并,在Master分支上生成一个新节点。
一、从远程主机克隆一个版本库
(1)git clone <版本库的网址>
(2)克隆版本库的时候,所使用的远程主机自动被Git命名为Origin。如果想用其他的主机名,使用-o指定:
git clone -o jQuery https://github.com/jquery/jquery.git
二、远程主机管理
为了便于管理,Git要求每个远程主机必须指定一个主机名。
(1)列出所有远程主机:git remote
(2)查看远程主机网址:git remote -v
(3)查看主机详细信息:git remote show origin
(4)添加远程主机:git remote add <主机名> <网址>
(5)删除远程主机:git remote rm <主机名>
(6)重命名远程主机:git remote rename <主机名> <网址>
三、取回本地
(1)全部取回本地,不自动合并:git fetch <远程主机名> <分支名>
(2)取回远程主机某个分支的更新,再与本地的指定分支合并:git pull <远程主机名> <远程分支名>:<本地分支名>
取回origin主机的next分支,并与本地的master分支合并:git pull origin next:master
如果远程分支与当前分支合并,则冒号后面的部分可省略:git pull origin next
(2)手动建立追踪关系:git branch --set-upstream master origin/next
PS:git pull origin next 等价于:git fetch origin git merge origin/next
四、推送到远程
(1)将本地分支的更新,推送到远程主机:git push <远程主机名> <本地分支名>:<远程分支名>
(2)如果省略远程分支名,则表示将本地分支推送与之存在”追踪关系”的远程分支(通常两者同名),如果该远程分支不存在,则会被新建:git push origin develop
(3)如果省略本地分支名,则表示删除指定的远程分支,因为这等同于推送一个空的本地分支到远程分支:
git push origin :master
等价于:git push origin --delete master(删除origin主机的master分支:git push
(4)如果当前分支只有一个追踪分支,那么主机名都可以省略:git push
注意,分支推送顺序的写法是<来源地>:<目的地>,所以git pull是<远程分支>:<本地分支>,而git push是<本地分支>:<远程分支>。
五、其他命令
(1)gitk:打开图形化界面
(2)git --help
(3)Git merge --help
GIT