Git基本操作流程及命令
在创建了远程仓库后文件的操作,创建远程仓库在页面就可以操作,不在此赘述
一般的,我们要将一个文件上传到创建的远程仓库(在本机安装了Git前提)
1.本地文件上传到远端仓库
首先在要上传文件的文件夹空白地方右键,选择Git Bash Here(未安装Git则无此选项),然后就会弹出Git的dos窗口,然后按顺序执行以下指令
1.1) git clone --拷贝一份远程仓库,就是下载一个项目
1.2) git init --初始化仓库
1.3) git add . --将文件添加到暂存区(注意: "."表示所有文件,也可以指定文件,例如:time.html)
1.4) git commit -m '提交文件注释' --将暂存区内容添加到仓库,一般-m参数为版本号
1.5) git push --将改动更新到远程仓库
一般上传文件到远程仓库这几步就可以了,中间如果出现报错fatal: The current branch dev has no upstream branch. To push the current则说明在本地创建的分支未关联到远程仓库
2.版本回退
2.1) git log --pretty=oneline --查看历史提交记录
2.2) git reset --hard id --版本回退,id为历史提交版本的id值(一串像MD5值的字符串)
更多操作:(借鉴菜鸟)
git reset HEAD^ # 回退所有内容到上一个版本 git reset HEAD^ hello.php # 回退 hello.php 文件的版本到上一个版本 git reset 052e # 回退到指定版本
2.3) git push origin HEAD --force --将回退的版本更新到远程代码库
这样就实现了版本的回退,但是如果我回退了版本后,本地仓库的代码也更新到了远程库,现在发现不需要回退了,想要找到回退之前的代码怎么办?
2.4) git reflog --此指令可查看命令的操作历史,然后找到你回退前的提交的那行,把前面的id值(一串比较短的类似MD5值的字符串)复制出来,结合版本回退指令,就可以回退到上一次回退前的代码了
3.重命名文件,目录或软连接
git mv [file] [newfile] --file:文件名;newfile:新文件名
git nv -f [file] [newfile] --如果新文件名已经存在,但还是要重命名它,可以用-f参数
4.删除文件
git rm test.txt --将test.txt文件从暂存区和工作区中删除
git rm -f test.txt --如果删除之前修改过,并且已经放到了暂存区,则必须使用强制删除选项 -f
git rm --cached test.txt --把文件从暂存区移除,但仍然希望保留在当前工作目录中,则用 --cache选项即可
git rm -r * --递归删除,例如进入到某个目录执行此语句,则会删除该目录下所有文件和子目录,*也可替换成目标文件名,就是删除指定文件
5.分支管理
5.1) git branch 分支名 --新建分支,如果不加参数(分支名)就是列出目前有哪些分支
5.2) git checkout 分支名 --切换分支(切换分支时,Git会用该分支的最后提交的快照替换你的工作目录的内容,所以多个分支不需要多个目录)
5.3) git branch -d 分支名 --删除指定分支
5.4) git merge 要合并的分支名 --合并分支,将要合并的分支名下的文件合到主分支(master),合并完后就可以删除分支了
注意:分支合并时,如果在A分支下对文件进行了修改,并git commit;
在B分支下也对相同文件进行了修改,并且git commit;
然后此时A分支再合并B分支就会出现合并冲突,可以用git diff指令查看修改的不同内容,然后修改文件内容,再用git add 文件名指令告诉Git这个文件冲突已经解决了。
dos状态下对文件的增,删,改指令请参考以下文章
Git中用vim打开、修改、保存文件(转)_weixin_34310127的博客-CSDN博客