windows中 git 命令使用记录

建议国内开发安装淘宝npm镜像cnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org

 或者每次执行安装时 

npm install -d --registry=https://registry.npm.taobao.org

 

1、克隆:git clone ***.git  (此时获取的是master下的代码)

2、进入项目文件:cd 文件夹名(输入前几位字母按tab键自动匹配)

cd yourname (进入名称为yourname的文件夹)
cd .. (返回上一级文件夹)
ls (显示当前文件夹下所有文件名称)
ll  (显示当前文件夹下所有文件列表详情)

3、创建分支:git branch name

如创建一个名称为dev的分支:
git branch dev

4、切换分支:git checkout name

如当前是master切换到dev:
git checkout dev
git checkout 还可以用于切换到某次git上的历史修改,比如历史某次修改提交git后sha1值为fd6c60ce38,则获取历史版本为:git checkout fd6c60ce38

5、查看所有分支(其中绿色为当前活动分支):

A)git branch 查看本地分支

B)git branch -a 查看远程分支

C)git branch -vv 查看本地分支与远程分支的绑定关系

使用 git checkout dev 切换后dev变为当前活动分支

 

6、从服务器强制获取某分支代码:git pull origin name

如获取dev分支:
git pull origin dev

7、更新时提示服务器有新版本,处理情况:

A、(慎用,不推荐,除非确认本地修改作废时)回滚本地代码:git reset --hard (origin/dev )

B、(推荐)暂存本地代码 --> 获取服务器新代码 --> 释放本地代码:git stash --> git pull origin master --> git stash pop

1)、先将本地修改存储起来
$ git stash
这样本地的所有修改就都被暂时存储起来 。是用git stash list可以看到保存的信息:git stash暂存修改,其中stash@{0}就是刚才保存的标记。

2)、pull内容,暂存了本地修改之后,就可以pull了。
$ git pull

3)、还原暂存的内容
$ git stash pop 
系统提示如下类似的信息:
Auto-merging c/environ.c
CONFLICT (content): Merge conflict in c/environ.c
意思就是系统自动合并修改的内容,但是其中有冲突,需要解决其中的冲突。

4)、解决文件中冲突的的部分。打开冲突的文件,会看到类似如下的内容:
git冲突内容
其中Updated upstream 和=====之间的内容就是pull下来的内容,====和stashed changes之间的内容就是本地修改的内容。
或者(冲突标记<<<<<<< (7个<)与=======之间的内容是我的修改,=======与>>>>>>>之间的内容是别人的修改。)
碰到这种情况,git也不知道哪行内容是需要的,所以要自行确定需要的内容。
解决完成之后,就可以正常的提交了

8、将服务器上已经存在的dev分支对应到本地分支,其中-b表示本地创建对应远程dev分支后,本地切换到dev分支(未测试本地已创建dev分支后不加-b情况哦):

git checkout (-b) dev origin/dev 

 

9、合并分支dev到主干master。

A)git checkout master          // 切换到master分支
B)git merge 分支名称(dev) -m '添加你的备注,否则会有默认类似Merge branch 'dev'信息'     
// 合并分支到master
C)有冲突的话解决冲突,没有的话跳过本步骤。
D)git push
-u origin master // 此时合并只是本地合并,还需要手动推送到远程git服务器。

 

 

10、本地自建项目git提交到远程服务器

A)git init 初始化本地项目文件夹

B)git add .(add和点 . 之间有个空格)将本地项目添加到本地暂存区,(如果你安装过Tortoisegit的话这时候文件就会被加上加号 )

C)git commit -m "你的第一次"  将你的项目添加注释备注等

D)git remote add origin http://你在远程服务器创建的空白git仓库.git   将本地项目和远程仓库建立联系

E)git push -u origin master 将你本地项目推送到远程服务器 (结束)

 

 11、关于忽略文件.gitignore的介绍可以参考:https://blog.csdn.net/weixin_45318845/article/details/120740012

 

参考链接:

git本地创建项目提交到远程服务器:http://blog.csdn.net/gaoying_blogs/article/details/53337112 

git版本管理和分支:http://blog.csdn.net/xiahouzuoxin/article/details/23140727 

git教程(易百):http://www.yiibai.com/git/git_fetch.html 

命令使用(无图):https://www.cnblogs.com/mjbin/p/5820942.html

关于git reset --hard这个命令的惨痛教训:https://www.cnblogs.com/hope-markup/p/6683522.html

 

 

Merge branch 'hanhui' 

posted @ 2017-12-06 11:24  一 定 会 去 旅 行  阅读(397)  评论(0)    收藏  举报