关于 git 的一个版本打包的问题

2016-11-27 23:38:27 +08:00
 Fong
比如我现在有一个网站, 1.0 版本有以下文件:
.
├── css
│   └── sytle.css
├── img
├── index.html
└── js
└── 1.js


我更新为 2.0 版本后文件如下:

.
├── css
│   └── main.css
└── index.html


我想同时保存这两个版本,我要怎么做?
1612 次点击
所在节点    问与答
9 条回复
Trim21
2016-11-28 03:26:49 +08:00
新分支?
kidlj
2016-11-28 07:06:48 +08:00
分别找到这两次提交,比如说是 commit_a, commit_b.

然后检出来一个新分支就好了:

$ git checkout master
$ git checkout -b version1.0 commit_a

version2.0 同理。
Cbdy
2016-11-28 07:31:49 +08:00
打个 tag
zxq1002
2016-11-28 08:56:31 +08:00
同时保存是什么意思,提交历史都在,要取哪个版本不都可以吗?通过分支两者并行开发也没问题
snachx
2016-11-28 08:56:50 +08:00
给 1.0 建个新分支就好了,当然嫌烦并且不会再更新旧版本的话,只打个 tag 也可以
weegc
2016-11-28 11:34:20 +08:00
目测楼主只是想保留历史,打 tag 则可
kidlj
2016-11-28 18:00:12 +08:00
有些人问完问题就跑路。 blocked 。
Fong
2016-12-04 17:13:23 +08:00
@kidlj 不得已而为之,正好这几天有事情,请见谅。谢谢你的回复。
Fong
2016-12-04 17:53:41 +08:00
测试过可以了,感觉很神奇。
我先 commit 1.0 版本的文件, push 完后,输入 git tag 1.0 ,删掉所有 1.0 版本的文件;
然后 commit 2.0 版的文件, push 完成后, git tag 2.0 ;

然后再 git checkout v1.0 1.0 , ls 后显示的全是 1.0 版本的文件, git checkout v2.0 2.0 全是 2.0 的文件。
git 确实比 svn 要棒很多,不过我用 svn 也只是用到 update 和 commit ,也没有用过分支功能,不知道是不是也可以实现像 git 这样效果。
总之,搞明白这个概念后,对 git 理解就更进一步了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/323701

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX