一、git上传新项目
1.将新项目复制一份,用于上传,放在任一目录
2.在gitlib建立对应名字得版本库
3.在新文件夹下的,项目文件夹里的根目录执行
// 初始化git项目文件,在想要操作的git为文件的根目录执行
1. git init
// 不转义符号,这不可以根据情况选择执行
1.1 git config --global core.autocrlf false
// 将目录下的所有文件进行暂存操作
2. git add .
// 进行提交操作,注释内容为 第一次提交
3. git commit -m "第一次提交"
// 与你的远程仓库所建的项目进行关联
4. git remote add origin 你的远程库地址
// 获取远程库与本地同步合并(如果远程库【不为空必须做这一步】,否则后面的提交会失败,【为空】不用5)
5. git pull --rebase origin master
// 推送当前暂存到到远程仓库
7. git push -u origin master
二、注意
输 入 git add . 后出现
warning: LF will be replaced by CRLF in …
The file will have its original line endings in your working directory.
解决方法:
git config --global core.autocrlf false
原因就是:
原因是路径中存在 / 的符号转义问题,false就是不转换符号默认是true,相当于把路径的 / 符号进行转义,这样添加的时候就有问题。
三、简单操作
// 查看修改的文件
git status
// 把修改的文件添加到暂存 (.为所有文件,也可以指定文件)
git add .
// 拉取远程,查看是都存在冲突
git pull
// 不存在冲突则本地提交
git commit -m "提交的内容描述"
// 推送到远程仓库
git push -u origin master
四、分支的创建与合并
1 git branch 列出本地已经存在的分支,并且当前分支会用*标记
2 git branch -r 查看远程版本库的分支列表
3 git branch -a 查看所有分支列表(包括本地和远程,remotes/开头的表示远程分支)
4 git branch -v 查看一个分支的最后一次提交
5 git branch --merged 查看哪些分支已经合并到当前分支
6 git branch --no-merged 查看所有未合并工作的分支
7 git checkout -b 新分支 创建分支的同时,切换到该分支上
8 git push --set-upstream origin dev 本地创建了一个名为dev的分支,远程仓库没有这个分支,push
9 git merge 合并代码
10 git merge --abort、git reset --merge 取消合并过程
五、其他常用命令
序号 | 命令 | 描述 |
---|---|---|
1 | git init | 新建代码库 |
2 | git clone | 克隆项目 |
4 | git branch | 列出本地已经存在的分支,并且当前分支会用*标记 |
5 | git branch -r | 查看远程版本库的分支列表 |
6 | git branch -a | 查看所有分支列表(包括本地和远程,remotes/开头的表示远程分支) |
7 | git branch -v | 查看一个分支的最后一次提交 |
8 | git branch --merged | 查看哪些分支已经合并到当前分支 |
9 | git branch --no-merged | 查看所有未合并工作的分支 |
10 | git checkout -b | 新分支 创建分支的同时,切换到该分支上 |
11 | git tag [name] | 创建tag |
12 | git tag | 查看已创建的tag |
13 | git show tagName | 查看tag对应的commit id |
14 | git reset --hard commit-id | (到这里就和reset方法一样了)回退代码 |
15 | git submodule add [url] [path] | 添加子模块 |
17 | git pull | 更新本地代码 |
18 | git fetch | 拉取仓库里有 本地电脑没有的代码 |
19 | git add | 将当前更改加入到索引 |
20 | git commit | 提交当前工作空间的修改内容 |
21 | git commit | 将commit的代码提交的远程仓库 |
22 | git reset --hard HEAD^ | 回退到上个版本 |
23 | git reset --hard | 本地库、暂存区动、工作区都动 |
24 | git reset --mixed | 本地库、暂存区动,工作区不动 |
25 | git reset --soft | 本地库动,暂存区、工作区不动 |
26 | git reset --hard HEAD~3 | 回退到前3次提交之前 |
27 | git push origin HEAD --force | 推送到远程仓库 |
28 | git push --set-upstream origin dev | 本地创建了一个名为dev的分支,远程仓库没有这个分支,push |
29 | git merge | 合并代码 |
30 | git merge --abort、git reset --merge | 取消合并过程 |
31 | git stash | 将当前分支修改暂存 |
32 | git stash list | 查看暂存信息 |
33 | git stash apply | 恢复最近一次修改 |
34 | git stash apply stash@{2} | 恢复索引 |
35 | git config --local remote.origin.url | 查看代码仓库地址 |
36 | git branch -d 分支名称 | 删除本地分支,不能删除当前所在的分支,如果要删除,必须先切换到其他分支上 |
37 | git branch -D 分支名称 | 强制删除分支 |
38 | git push origin :分支名称 | 删除远程分支,分支名称前有个冒号,分支名前的冒号代表删除 |
39 | git status | 文件、文件夹在工作区、暂存区的状态 |
40 | git log | 查看提交历史 |