At least in Ohio, there are two grocery chains that offer gas discounts based on what you buy from them; Krogers and Giant Eagle. If it was more expensive to buy from them than from others, it wouldn't be worth it to buy from them just for gas discounts but their prices are as good as other comparable supermarkets. The strategy is to use your Cabela's credit card to buy your groceries and if gift cards are available for things you are going to buy anyway, get those as well.
The last time I filled up my vehicle and some empty gas cans (they have a 30 gallon limit), I paid 1.9 cents a gallon. The the points I earned on my Cabela's card for the purchases used to get the discount, brought my gas price to below free.