1. 方法一:
1)直接在GitHub上建立一个项目,然后git clone (git address name); 此时已经建立好了一个git仓库;
2)cd 文件夹 》 添加文件进去 》git add . // 它会提示你![](http://images2017.cnblogs.com/blog/1329237/201802/1329237-20180208132205810-96770206.png);
3) 没有关系,继续git commit -m '备注' 》 最后git push 第一次它会提示你输入邮箱和密码,后面再建项目不会;
2. 方法二 :命令行建立
1)mkdir 文件夹名;
2) cd 文件夹;
3) pwd 查看目录;
4)git init 初始化一个仓库; //目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的, 如果你没有看到.git目录,那是因为这个目录默认是隐藏的,用ls -ah命令就可以看见。
5)git branch 查看分支y
6)git checkout -b x origin/y //使用该方式会在本地新建分支x,并自动切换到该本地分支y。 采用此种方法建立的本地分支会和远程分支建立映射关系。 当远程分支已存在的情况下使用,并且内容也会由一个分支复制到新分支上;
6.1) git branch dev # 创建本地分支 # 这个时候dev是一个本地分支,远程仓库不知道它的存在 # 本地分支可以不同步到远程仓库,我们可以在dev开发,然后merge到master,使用master同步代码,当然也可以同步;
7)git push origin test:master // 提交本地test分支作为远程的master分支
7.1) git push origin test:test // 提交本地test分支作为远程的test分支
8) git push --set-upstream origin dev1 建立与远程分支的链接 或者git push origin dev:dev # 这样远程仓库也有一个dev分支了; 若果报错 试下git branch --set-upstream-to=origin future/zrs_exercise
9)下面就是git checkout dev ,git add . ,git commit -m '' ,git push ;
3. 常见命令:
1. 删除分支:
1.1). git push origin :dev # 删除远程dev分支,危险命令哦!
2. 下面两条是删除本地分支
2.1) git checkout master # 切换到master分支 不能在dev分支上删除dev;
2.2) git branch -d dev # 删除本地dev分支;
3. 重命名分支及查看分支
3.1)本地:git branch -m 新名字 在当前分支上;
3.2)查看本地分支:git branch
3.3)查看远程分支:git branch -r
3.4) 查看所有分支:git branch -al
3.5) 查看本地分支跟踪哪个远程分支: git branch -vv
3.6)查看当前工作状态:git state
3.7) 查看当前文件 :ll , ls
3.8)查看当前目录:pwd
3.9) 查看当前版本 Git --version
查看node版本 node -v
查看npm版本 npm -v
查看目录 find / -name 名字
当前服务器查看上传文件 vi 文件名
文件内 vim / cat 文件名
退出查看 :q!
4. 远程:删除远程分支,git push --set-upstream origin 新名字;
5. 回复版本:
git reset --hard HEAD^ 回复一个版本
git reset --hard HEAD~n 回复第n个版本
git merge --abort 回退上个版本
6. 切换及创建本地分支
6.1) git checkout b1 //进入master分支b1
6.2) git checkout -b from b1 //以b1为源创建分支fromb1;
6.3) git checkout -b //以b1为源创建分支fromb1;
7. 拉取分支
7.1)由另一个远程分支,得到一个新的本地分支并得到其远程分支代码;git checkout 分支名;
7.2)git pull origin master 从哪个分支上拉取;
7.3)git pull 由自己远程分支拉取到本地;
7.4)git fetch 由拉取同伴新建远程的分支名 //git branch -r 看到别人新建的分支
8. Linux 命令:
8.1) touch test.txt 建立文本; // touch .gitignore 可以创建一个空白的文件;
cat .gitignore 打开某个文件并把内容输出到终端;
8.2) vim test.txt 编辑文本;
8.3)ESC shift : wq 保存退出;
8.4)git push -f 强推;
8.5) clear 清除 ;
8.6) ls 列出文件
8.7) ls -l 列出文件下的文件(包含文件名)
8.8) mkdir -p k/wen 在k下创建wen 文件
8.9) cp m k /M 在k 下复制一个m文件
9.0) mv m k/M 把m 文件移动到M
9.1)rm -r k 删除k 文件
9.2) rm -rm /* 删除该目录下所有文件
权限于类型:
drwxr-xr-x
如果不是dr - 说明普通文件,二进制文件
-c 说明它是字节文件
-b 说明它是块文件
wxr 用户自己的权限
xr 代表组的权限
x execute 可执行权限
r read 只读权限
w write 只写权限
chmod 可以改变权限类型
sudo chmod 临时给它权限
解压,压缩命令:
zip -r k.zip filename 打包后压缩后新文件名
unzip k -d new_dir 解压该文件
tar -cvf a.tar directory_to_compress
tar -xvf a.tar -C new_dir
tar -zcvf a.tar.gz filname 打包并压缩
tar -zxvf a.tar.gz -c new_dir 解包
基本命令:
sort unsort.txt | uniq 去除文件中的重复行
echo 12345 打印这个值
echo 12345 | tr '0-9' '987654321' 打印替换这个值
cut -f2,4 filename 截取多少行
wc -l file 打印多少行
cat 01.txt 02.txt 03.txt > 04.txt 把这个文件合并成一个新文件
# 管道符 或者正则
cat che.log | grep -n '筛选' 这个筛选出来
a 以xxx开头(正则) ls -l | grep '^a'
b 以xxx 结尾 ls -l | grep 'b$'
9. git 上发布的版本打标签
例如
先commit
git tag v1 打标签
改内容 commit
git tag v2 打标签
git checkout -B AAA v2 将标签v2的内容检出到本地AAA;
// 打标签
git tag -a v0.1.0 -m "完成了文章a和文章b的撰写,耗费时间2h,感觉棒棒的!"
// push 标签到远程仓库
git push origin v0.1.0